Open In App

C# | Uri.IsWellFormedOriginalString() Method

Last Updated : 30 Apr, 2019
Improve
Improve
Like Article
Like
Save
Share
Report

Uri.IsWellFormedOriginalString() Method is used to show whether the string used to construct this Uri was well-formed and is not required to be further escaped.

Syntax: public bool IsWellFormedOriginalString ();

Return Value: This method returns true if the string was well-formed otherwise, false.

Below programs illustrate the use of Uri.IsWellFormedOriginalString() Method:

Example 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");
    }
}


Output:

uri is well formed

Example 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");
    }
}


Output:

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

Reference:



Like Article
Suggest improvement
Previous
Next
Share your thoughts in the comments

Similar Reads