我正在使用以下代码来验证 url,但在这两种情况下的问题
检查结果为真。我应该如何在第二个选项中得到错误?
这里 bool 是真的
bool isWellFormedUriString = Uri.IsWellFormedUriString("http://stackoverflow.com/", UriKind.RelativeOrAbsolute);
这也是真的
bool isWellFormedUriString = Uri.IsWellFormedUriString("ddddd", UriKind.RelativeOrAbsolute);
现在当我做
_uri = new Uri(_url);
我有异常.... 最佳答案
字符串 ddddd
可能是完整 URI 的有效“部分”,因此使用 Relative
或 RelativeOrAbsolute
返回 true。
尝试将第二个参数更改为 UriKind.Absolute
:
bool isWellFormedUriString // returns true
= Uri.IsWellFormedUriString("http://stackoverflow.com/", UriKind.Absolute);
bool isWellFormedUriString // returns false
= Uri.IsWellFormedUriString("ddddd", UriKind.Absolute);
从 docs :
关于c# - URL 验证 IsWellFormedUriString 始终返回 true,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/21253325/