Every instance of Uri is immutable. This class wraps a Uri object and allows you to modify some of its properties without needing to create a new Uri . It is analogous to the System.Text.StringBuilder class for strings. public class UriBuilder { // Public Constructors public UriBuilder ( ); public UriBuilder (string uri ); public UriBuilder (string schemeName , string hostName ); public UriBuilder (string scheme , string host , int portNumber ); public UriBuilder (string scheme , string host , int port , string pathValue ); public UriBuilder (string scheme , string host , int port , string path , string extraValue ); public UriBuilder (Uri uri ); // Public Instance Properties public string Fragment {set; get; } public string Host {set; get; } public string Password {set; get; } public string Path {set; get; } public int Port {set; get; } public string Query {set; get; } public string Scheme {set; get; } public Uri Uri {get; } public string UserName {set; get; } // Public Instance Methods public override bool Equals (object rparam ); // overrides object public override int GetHashCode ( ); // overrides object public override string ToString ( ); // overrides object } |