6

我正在使用代码:

Uri.TryCreate(sURL, UriKind.Absolute, out URI)

效果很好。

我需要打电话Uri.IsWellFormedUriString(sURL, UriKind.Absolute)吗?我的意思是我想知道什么Uri.IsWellFormedUriString时候Uri.TryCreate可以完美运行?

4

1 回答 1

8

Uri.IsWellFormedUriString内部调用TryCreate以及调用Uri.IsWellFormedOriginalString因此结果可能与简单调用不同TryCreate

来自 ILSpy

public static bool IsWellFormedUriString(string uriString, UriKind uriKind)
{
    Uri uri;
    return Uri.TryCreate(uriString, uriKind, out uri) && uri.IsWellFormedOriginalString();
}

来自MSDN

[Uri.IsWellFormedOriginalString] 表示用于构造此 Uri 的字符串是否格式正确,不需要进一步转义。

于 2013-06-24T14:07:34.070 回答