Uri.IsWellFormedOriginalString()方法用于显示用于构造此Uri的字符串是否字符串,是否不需要进一步转义。
Syntax: public bool IsWellFormedOriginalString ();
Return Value: This method returns true if the string was well-formed otherwise, false.
下面的程序说明了Uri.IsWellFormedOriginalString()方法的用法:
范例1:
// C# program to demonstrate the
// Uri.IsWellFormedOriginalString()
// Method
using System;
using System.Globalization;
class GFG {
// Main Method
public static void Main()
{
// Declaring and initializing address
Uri address1 = new Uri("http://www.contoso.com/index.htm#search");
// Validating if Uri is well formed or not
// using IsWellFormedOriginalString() method
bool value = address1.IsWellFormedOriginalString();
// Displaying the result
if (value)
Console.WriteLine("uri is well formed");
else
Console.WriteLine("uri is not well formed");
}
}
输出:
uri is well formed
范例2:
// C# program to demonstrate the
// Uri.IsWellFormedOriginalString()
// Method
using System;
using System.Globalization;
class GFG {
// Main Method
public static void Main()
{
try {
// calling get() method
get(new Uri("http://www.contoso.com/path"));
// if The string is not correctly escaped.
get(new Uri("http://www.contoso.com/path???/file name"));
// The string is an absolute Uri
// that represents an implicit
// file Uri.
get(new Uri("c:\\directory\filename"));
// The string is an absolute URI that
// is missing a slash before the path.
get(new Uri("file://c:/directory/filename"));
// The parser for the Uri.Scheme indicates
// that the original string was not well-formed.
get(new Uri("xy11.z://www.contoso.com/path/file"));
// The string contains unescaped backslashes
// even if they are treated as forwarding slashes.
get(new Uri("http:\\host/path/file"));
// The string represents a hierarchical
// absolute Uri and does not contain "://".
get(new Uri("www.contoso.com/path/file"));
}
catch (UriFormatException e)
{
Console.Write("uri is so poorly formed that system thrown ");
Console.Write("{0}", e.GetType(), e.Message);
Environment.Exit(1);
}
}
// defining get() method
public static void get(Uri address)
{
// Validating if Uri is well formed or not
// using IsWellFormedOriginalString() method
bool value = address.IsWellFormedOriginalString();
// Displaying the result
if (value)
Console.WriteLine("uri is well formed");
else
Console.WriteLine("uri is poorly formed");
}
}
输出:
uri is well formed
uri is poorly formed
uri is poorly formed
uri is poorly formed
uri is well formed
uri is so poorly formed that system thrown System.UriFormatException
参考:
- https://docs.microsoft.com/zh-cn/dotnet/api/system.uri.iswellformedoriginalstring?view=netstandard-2.1