有Uri.IsWellFormedUriString
和Uri.TryCreate
方法,但是它们似乎返回true
作为文件路径,等等.
出于输入验证的目的,如何判断字符串是否为有效的(不一定是活动的)HTTP URL?
有Uri.IsWellFormedUriString
和Uri.TryCreate
方法,但是它们似乎返回true
作为文件路径,等等.
出于输入验证的目的,如何判断字符串是否为有效的(不一定是活动的)HTTP URL?
try 此操作以验证HTTP URL(uriName
是您要测试的URI):
Uri uriResult;
bool result = Uri.TryCreate(uriName, UriKind.Absolute, out uriResult)
&& uriResult.Scheme == Uri.UriSchemeHttp;
或者,如果您想同时接受HTTP和HTTPS URL作为有效URL(根据J0e3gan的 comments ):
Uri uriResult;
bool result = Uri.TryCreate(uriName, UriKind.Absolute, out uriResult)
&& (uriResult.Scheme == Uri.UriSchemeHttp || uriResult.Scheme == Uri.UriSchemeHttps);