当Uri TryCreate完美运行时,使用Uri IsWellFormedUriString

时间:2013-06-24 14:02:11

标签: c# .net url .net-2.0 uri

我正在使用代码:

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

工作正常。

我是否需要致电Uri.IsWellFormedUriString(sURL, UriKind.Absolute)?我的意思是我想知道Uri.IsWellFormedUriStringUri.TryCreate完美运作时{{1}}的用途是什么?

1 个答案:

答案 0 :(得分:5)

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的字符串是否为   格式良好,不需要进一步逃脱。