<Type Name="UriBuilder" FullName="System.UriBuilder" FullNameSP="System_UriBuilder" Maintainer="ecma">
  <TypeSignature Language="ILASM" Value=".class public UriBuilder extends System.Object" />
  <TypeSignature Language="C#" Value="public class UriBuilder" />
  <MemberOfLibrary>Networking</MemberOfLibrary>
  <AssemblyInfo>
    <AssemblyName>System</AssemblyName>
    <AssemblyPublicKey>[00 00 00 00 00 00 00 00 04 00 00 00 00 00 00 00 ]</AssemblyPublicKey>
    <AssemblyVersion>1.0.x.x</AssemblyVersion>
    <AssemblyVersion>1.0.5000.0</AssemblyVersion>
    <AssemblyVersion>2.0.0.0</AssemblyVersion>
  </AssemblyInfo>
  <ThreadingSafetyStatement>All public static members of this type are safe for multithreaded operations. No instance members are guaranteed to be thread safe.</ThreadingSafetyStatement>
  <Base>
    <BaseTypeName>System.Object</BaseTypeName>
  </Base>
  <Interfaces />
  <Docs>
    <summary>
      <para> Provides a mutable version of the <see cref="T:System.Uri" /> class.</para>
    </summary>
    <remarks>
      <para>The <see cref="T:System.Uri" /> and <see cref="T:System.UriBuilder" /> classes both
   represent a Uniform Resource
   Identifier (URI). Instances of the <see cref="T:System.Uri" /> type are immutable: once the underlying URI is
   specified, neither it nor its components, or
   constituent parts, can be changed. The <see cref="T:System.UriBuilder" /> type permits modifications to
   the components of the URI it represents. The <see cref="P:System.UriBuilder.Uri" /> property provides the current contents of a
<see cref="T:System.UriBuilder" /> as a 
<see cref="T:System.Uri" /> instance. </para>
      <para>
        <block subset="none" type="note">For more information on URI, see IETF 
   RFC 2396.</block>
      </para>
    </remarks>
  </Docs>
  <Members>
    <Member MemberName=".ctor">
      <MemberSignature Language="ILASM" Value="public rtspecialname specialname instance void .ctor()" />
      <MemberSignature Language="C#" Value="public UriBuilder ();" />
      <MemberType>Constructor</MemberType>
      <ReturnValue />
      <Parameters />
      <Docs>
        <summary>
          <para>Constructs and initializes a new instance of the <see cref="T:System.UriBuilder" /> class.</para>
        </summary>
        <remarks>
          <para> This constructor creates a new instance of the
   <see cref="T:System.UriBuilder" /> class with its
      properties initialized as follows:</para>
          <list type="table">
            <listheader>
              <term>Property</term>
              <description>Initial value</description>
            </listheader>
            <item>
              <term> Fragment</term>
              <description>
                <see cref="F:System.String.Empty" />
              </description>
            </item>
            <item>
              <term> Host</term>
              <description>"loopback"</description>
            </item>
            <item>
              <term> Password</term>
              <description>
                <see cref="F:System.String.Empty" />
              </description>
            </item>
            <item>
              <term> Path</term>
              <description>"/"</description>
            </item>
            <item>
              <term> Port</term>
              <description>80</description>
            </item>
            <item>
              <term> Query</term>
              <description>
                <see cref="F:System.String.Empty" />
              </description>
            </item>
            <item>
              <term> Scheme</term>
              <description>
                <see cref="F:System.Uri.UriSchemeHttp" />
              </description>
            </item>
            <item>
              <term> UserName</term>
              <description>
                <see cref="F:System.String.Empty" />
              </description>
            </item>
          </list>
        </remarks>
      </Docs>
      <Excluded>0</Excluded>
      <AssemblyInfo>
        <AssemblyVersion>1.0.5000.0</AssemblyVersion>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
      </AssemblyInfo>
    </Member>
    <Member MemberName=".ctor">
      <MemberSignature Language="ILASM" Value="public rtspecialname specialname instance void .ctor(string uri)" />
      <MemberSignature Language="C#" Value="public UriBuilder (string uri);" />
      <MemberType>Constructor</MemberType>
      <ReturnValue />
      <Parameters>
        <Parameter Name="uri" Type="System.String" />
      </Parameters>
      <Docs>
        <param name="uri">A <see cref="T:System.String" /> containing a URI.</param>
        <summary>
          <para>Constructs and initializes a new instance of the <see cref="T:System.UriBuilder" /> class using
   the specified URI.</para>
        </summary>
        <remarks>
          <para>This constructor checks for the presence of a scheme in
   <paramref name="uri" />. If no scheme is found, <see cref="F:System.Uri.UriSchemeHttp" /> + <see cref="F:System.Uri.SchemeDelimiter" /> are prepended to
   <paramref name="uri" />. The <see cref="T:System.Uri" />(<see cref="T:System.String" />) constructor is passed <paramref name="uri" />, and the components
      of the new <see cref="T:System.Uri" /> instance are used to initialize the properties of the
   <see cref="T:System.UriBuilder" />
   instance being constructed.</para>
          <para>If <paramref name="uri" />.<see langword="Fragment" /> is not equal to <see cref="F:System.String.Empty" />, <paramref name="uri" />.<see langword="Fragment" />
is copied to the <see cref="P:System.UriBuilder.Fragment" /> property of the current instance,
otherwise <paramref name="uri" />.<see langword="Query" /> is copied to the <see cref="P:System.UriBuilder.Query" /> property of the current instance.</para>
          <para>The <see langword="Host" />, <see langword="Port" /> and
<see langword="Scheme" /> properties of the <see cref="T:System.Uri" /> instance are used to initialize the 
corresponding properties in the current instance. The
<see langword="AbsolutePath" /> property of the <see cref="T:System.Uri" /> instance is used to initialize the 
<see langword="Path" /> property of the current instance.</para>
          <para>The <see langword="UserInfo" /> property of
the <see cref="T:System.Uri" /> instance
is used to initialize the <see langword="UserName" /> and
<see langword="Password" /> properties of the current instance.</para>
        </remarks>
        <exception cref="T:System.ArgumentNullException">
          <para>
            <paramref name="uri " /> is <see langword="null" /> .</para>
        </exception>
        <exception cref="T:System.UriFormatException">
          <para>
            <paramref name="uri" /> is a zero length string or contains only spaces.</para>
          <para>-or-</para>
          <para>The parsing routine detected a scheme in an invalid form.</para>
          <para>-or-</para>
          <para>The parser detected more than two consecutive slashes in a URI that does not use the "file" scheme.</para>
          <para>-or-</para>
          <para>
            <paramref name="uri " />is in an invalid form and cannot be parsed.</para>
        </exception>
      </Docs>
      <Excluded>0</Excluded>
      <AssemblyInfo>
        <AssemblyVersion>1.0.5000.0</AssemblyVersion>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
      </AssemblyInfo>
    </Member>
    <Member MemberName=".ctor">
      <MemberSignature Language="ILASM" Value="public rtspecialname specialname instance void .ctor(class System.Uri uri)" />
      <MemberSignature Language="C#" Value="public UriBuilder (Uri uri);" />
      <MemberType>Constructor</MemberType>
      <ReturnValue />
      <Parameters>
        <Parameter Name="uri" Type="System.Uri" />
      </Parameters>
      <Docs>
        <param name="uri">An instance of the <see cref="T:System.Uri" /> class.</param>
        <summary>
          <para>Constructs and initializes a new instance of the <see cref="T:System.UriBuilder" /> class with the specified <see cref="T:System.Uri" /> instance.</para>
        </summary>
        <remarks>
          <para>The components of the specified <see cref="T:System.Uri" /> instance are used to initialize the properties of the
<see cref="T:System.UriBuilder" /> 
instance being constructed.</para>
          <para>If <paramref name="uri" />.<see langword="Fragment" /> is not equal to <see cref="F:System.String.Empty" />, <paramref name="uri" />.<see langword="Fragment" />
is copied to the <see cref="P:System.UriBuilder.Fragment" /> property of the current instance,
otherwise <paramref name="uri" />.<see langword="Query" /> is copied to the <see cref="P:System.UriBuilder.Query" /> property of the current instance.</para>
          <para>The <see langword="Host" />, <see langword="Port" /> and <see langword="Scheme" />
properties of the <see cref="T:System.Uri" /> instance are used to initialize the corresponding
properties in the current instance. The <see langword="AbsolutePath" /> property
of the <see cref="T:System.Uri" />
instance is used to initialize the <see langword="Path" /> property of the current
instance.</para>
          <para>The <see langword="UserInfo" /> property of the <see cref="T:System.Uri" /> instance is used to initialize the
<see langword="UserName" /> and <see langword="Password" /> properties of the 
current instance.</para>
        </remarks>
        <exception cref="T:System.NullReferenceException">
          <para>
            <paramref name="uri " /> is <see langword="null" /> .</para>
        </exception>
      </Docs>
      <Excluded>0</Excluded>
      <AssemblyInfo>
        <AssemblyVersion>1.0.5000.0</AssemblyVersion>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
      </AssemblyInfo>
    </Member>
    <Member MemberName=".ctor">
      <MemberSignature Language="ILASM" Value="public rtspecialname specialname instance void .ctor(string schemeName, string hostName)" />
      <MemberSignature Language="C#" Value="public UriBuilder (string schemeName, string hostName);" />
      <MemberType>Constructor</MemberType>
      <ReturnValue />
      <Parameters>
        <Parameter Name="schemeName" Type="System.String" />
        <Parameter Name="hostName" Type="System.String" />
      </Parameters>
      <Docs>
        <param name="schemeName">A <see cref="T:System.String" /> containing the name of an Internet access protocol.</param>
        <param name="hostName">A <see cref="T:System.String" /> containing a DNS host name or IP address.</param>
        <summary>
          <para>Constructs and initializes a new instance of the <see cref="T:System.UriBuilder" /> class with
   the specified scheme and host.</para>
        </summary>
        <remarks>
          <para>This constructor creates a new instance of the <see cref="T:System.UriBuilder" /> class with
   its properties initialized as follows:</para>
          <list type="table">
            <listheader>
              <term>Property</term>
              <description>Initial value</description>
            </listheader>
            <item>
              <term> Fragment</term>
              <description>
                <see cref="F:System.String.Empty" />
              </description>
            </item>
            <item>
              <term> Host</term>
              <description>
                <paramref name="hostName" />
              </description>
            </item>
            <item>
              <term> Password</term>
              <description>
                <see cref="F:System.String.Empty" />
              </description>
            </item>
            <item>
              <term> Path</term>
              <description>"/"</description>
            </item>
            <item>
              <term> Port</term>
              <description>-1</description>
            </item>
            <item>
              <term> Query</term>
              <description>
                <see cref="F:System.String.Empty" />
              </description>
            </item>
            <item>
              <term> Scheme</term>
              <description>
                <paramref name="schemeName" />
              </description>
            </item>
            <item>
              <term> UserName</term>
              <description>
                <see cref="F:System.String.Empty" />
              </description>
            </item>
          </list>
          <see langword="" />
          <see langword="" />
          <see langword="" />
          <see langword="" />
          <block subset="none" type="note">
            <see cref="P:System.UriBuilder.Port" /> is initialized to the value -1 to indicate 
the default port for the scheme should be used.</block>
        </remarks>
      </Docs>
      <Excluded>0</Excluded>
      <AssemblyInfo>
        <AssemblyVersion>1.0.5000.0</AssemblyVersion>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
      </AssemblyInfo>
    </Member>
    <Member MemberName=".ctor">
      <MemberSignature Language="ILASM" Value="public rtspecialname specialname instance void .ctor(string scheme, string host, int32 portNumber)" />
      <MemberSignature Language="C#" Value="public UriBuilder (string scheme, string host, int portNumber);" />
      <MemberType>Constructor</MemberType>
      <ReturnValue />
      <Parameters>
        <Parameter Name="scheme" Type="System.String" />
        <Parameter Name="host" Type="System.String" />
        <Parameter Name="portNumber" Type="System.Int32" />
      </Parameters>
      <Docs>
        <param name="scheme">A <see cref="T:System.String" /> containing the name of an Internet access protocol.</param>
        <param name="host">A <see cref="T:System.String" /> containing a DNS host name or IP address.</param>
        <param name="portNumber">A <see cref="T:System.Int32" /> containing an IP port number.</param>
        <summary>
          <para>Constructs and initializes a new instance of the <see cref="T:System.UriBuilder" /> class with the
   specified scheme, host, and port.</para>
        </summary>
        <remarks>
          <para>This constructor creates a new instance of the <see cref="T:System.UriBuilder" /> class with
   its properties initialized as follows:</para>
          <list type="table">
            <listheader>
              <term>Property</term>
              <description>Initial value</description>
            </listheader>
            <item>
              <term> Fragment</term>
              <description>
                <see cref="F:System.String.Empty" />
              </description>
            </item>
            <item>
              <term> Host</term>
              <description>
                <paramref name="host" />
              </description>
            </item>
            <item>
              <term> Password</term>
              <description>
                <see cref="F:System.String.Empty" />
              </description>
            </item>
            <item>
              <term> Path</term>
              <description>"/"</description>
            </item>
            <item>
              <term> Port</term>
              <description>
                <paramref name="portNumber" />
              </description>
            </item>
            <item>
              <term> Query</term>
              <description>
                <see cref="F:System.String.Empty" />
              </description>
            </item>
            <item>
              <term> Scheme</term>
              <description>
                <paramref name="scheme" />
              </description>
            </item>
            <item>
              <term> UserName</term>
              <description>
                <see cref="F:System.String.Empty" />
              </description>
            </item>
          </list>
        </remarks>
        <exception cref="T:System.ArgumentOutOfRangeException">
          <paramref name="portNumber" /> is less than zero.</exception>
      </Docs>
      <Excluded>0</Excluded>
      <AssemblyInfo>
        <AssemblyVersion>1.0.5000.0</AssemblyVersion>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
      </AssemblyInfo>
    </Member>
    <Member MemberName=".ctor">
      <MemberSignature Language="ILASM" Value="public rtspecialname specialname instance void .ctor(string scheme, string host, int32 port, string pathValue)" />
      <MemberSignature Language="C#" Value="public UriBuilder (string scheme, string host, int port, string pathValue);" />
      <MemberType>Constructor</MemberType>
      <ReturnValue />
      <Parameters>
        <Parameter Name="scheme" Type="System.String" />
        <Parameter Name="host" Type="System.String" />
        <Parameter Name="port" Type="System.Int32" />
        <Parameter Name="pathValue" Type="System.String" />
      </Parameters>
      <Docs>
        <param name="scheme">A <see cref="T:System.String" /> containing the name of an Internet access protocol.</param>
        <param name="host">A <see cref="T:System.String" /> containing a DNS host name or IP address.</param>
        <param name="port">A <see cref="T:System.Int32" /> containing an IP port number.</param>
        <param name="pathValue">A <see cref="T:System.String" /> containing the path for the resource.</param>
        <summary>
          <para>Constructs and initializes a new instance of the <see cref="T:System.UriBuilder" /> class with the specified scheme,
   host, port number, and path.</para>
        </summary>
        <remarks>
          <para>This constructor creates a new instance of the <see cref="T:System.UriBuilder" /> class with
   its properties initialized as follows:</para>
          <list type="table">
            <listheader>
              <term>Property</term>
              <description>Initial value</description>
            </listheader>
            <item>
              <term> Fragment</term>
              <description>
                <see cref="F:System.String.Empty" />
              </description>
            </item>
            <item>
              <term> Host</term>
              <description>
                <paramref name="host" />
              </description>
            </item>
            <item>
              <term> Password</term>
              <description>
                <see cref="F:System.String.Empty" />
              </description>
            </item>
            <item>
              <term> Path</term>
              <description>
                <paramref name="pathValue" />
              </description>
            </item>
            <item>
              <term> Port</term>
              <description>
                <paramref name="port" />
              </description>
            </item>
            <item>
              <term> Query</term>
              <description>
                <see cref="F:System.String.Empty" />
              </description>
            </item>
            <item>
              <term> Scheme</term>
              <description>
                <paramref name="scheme" />
              </description>
            </item>
            <item>
              <term> UserName</term>
              <description>
                <see cref="F:System.String.Empty" />
              </description>
            </item>
          </list>
          <para>Before setting the <see cref="P:System.UriBuilder.Path" /> property, this constructor converts any backward slashes
in <paramref name="pathValue" /> to forward slashes, and calls <see cref="M:System.Uri.EscapeString(System.String)" />(<paramref name="pathValue" />). </para>
        </remarks>
        <exception cref="T:System.ArgumentOutOfRangeException">
          <paramref name="port" /> is less than zero.</exception>
      </Docs>
      <Excluded>0</Excluded>
      <AssemblyInfo>
        <AssemblyVersion>1.0.5000.0</AssemblyVersion>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
      </AssemblyInfo>
    </Member>
    <Member MemberName=".ctor">
      <MemberSignature Language="ILASM" Value="public rtspecialname specialname instance void .ctor(string scheme, string host, int32 port, string path, string extraValue)" />
      <MemberSignature Language="C#" Value="public UriBuilder (string scheme, string host, int port, string pathValue, string extraValue);" />
      <MemberType>Constructor</MemberType>
      <ReturnValue />
      <Parameters>
        <Parameter Name="scheme" Type="System.String" />
        <Parameter Name="host" Type="System.String" />
        <Parameter Name="port" Type="System.Int32" />
        <Parameter Name="pathValue" Type="System.String" />
        <Parameter Name="extraValue" Type="System.String" />
      </Parameters>
      <Docs>
        <param name="scheme">A <see cref="T:System.String" /> containing the name of an Internet access protocol.</param>
        <param name="host">A <see cref="T:System.String" /> containing a DNS host name or IP address.</param>
        <param name="port">A <see cref="T:System.Int32" /> containing an IP port number.</param>
        <param name="pathValue">To be added.</param>
        <param name="extraValue">A <see cref="T:System.String" /> containing a query or fragment component.</param>
        <summary>
          <para>Constructs and initializes a new instance of the <see cref="T:System.UriBuilder" /> class with the specified scheme, host, port number, path, and
   query string or fragment identifier.</para>
        </summary>
        <remarks>
          <para>This constructor creates a new instance of the <see cref="T:System.UriBuilder" /> class with
   its properties initialized as follows:</para>
          <list type="table">
            <listheader>
              <term>Property</term>
              <description>Initial value</description>
            </listheader>
            <item>
              <term> Fragment</term>
              <description>If
      <paramref name="extraValue" /> begins with a "#", <paramref name="extraValue" />; otherwise
      <see cref="F:System.String.Empty" /> . </description>
            </item>
            <item>
              <term> Host</term>
              <description>
                <paramref name="host" />
              </description>
            </item>
            <item>
              <term> Password</term>
              <description>
                <see cref="F:System.String.Empty" />
              </description>
            </item>
            <item>
              <term> Path</term>
              <description>
                <paramref name="path" />
              </description>
            </item>
            <item>
              <term> Port</term>
              <description>
                <paramref name="port" />
              </description>
            </item>
            <item>
              <term> Query</term>
              <description>If
   <paramref name="extraValue" /> begins with a "?", <paramref name="extraValue" />; otherwise
   <see cref="F:System.String.Empty" /> .</description>
            </item>
            <item>
              <term> Scheme</term>
              <description>
                <paramref name="scheme" />
              </description>
            </item>
            <item>
              <term> UserName</term>
              <description>
                <see cref="F:System.String.Empty" />
              </description>
            </item>
          </list>
          <para>Before setting the <see cref="P:System.UriBuilder.Path" /> property, this constructor converts any
backward slashes in <paramref name="path" /> to forward slashes, and calls <see cref="M:System.Uri.EscapeString(System.String)" />(<paramref name="path" />). </para>
        </remarks>
        <exception cref="T:System.ArgumentOutOfRangeException">
          <paramref name="port" /> is less than zero.</exception>
        <exception cref="T:System.ArgumentException">
          <paramref name="extraValue" /> is not  <see langword="null" /> or <see cref="P:System.String.Empty" />, and does not have as its first character a number sign ('#') indicating a fragment, or a question mark ('?') indicating a query.</exception>
      </Docs>
      <Excluded>0</Excluded>
      <AssemblyInfo>
        <AssemblyVersion>1.0.5000.0</AssemblyVersion>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
      </AssemblyInfo>
    </Member>
    <Member MemberName="Equals">
      <MemberSignature Language="ILASM" Value=".method public hidebysig virtual bool Equals(object rparam)" />
      <MemberSignature Language="C#" Value="public override bool Equals (object rparam);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Boolean</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="rparam" Type="System.Object" />
      </Parameters>
      <Docs>
        <param name="rparam">The object to compare with the current instance. The string representation of this argument is used to construct a <see cref="T:System.Uri" /> for comparison.</param>
        <summary>
          <para> Compares the current instance
      and the specified object for equality.</para>
        </summary>
        <returns>
          <para>
            <see langword="true" /> if
<paramref name="rparam" /><paramref name=" " /> 
represents the same URI as the current instance. If <paramref name="rparam" /> is
<see langword="null" /> 
, returns <see langword="false" /> .</para>
        </returns>
        <remarks>
          <para>This method invokes <see cref="M:System.Uri.Equals(System.Object)" />(<paramref name="rparam" />.ToString()) on 
   the <see cref="T:System.Uri" />
   instance returned by the <see cref="P:System.UriBuilder.Uri" /> property of the current instance.</para>
          <para>
            <block subset="none" type="note">This method
   overrides <see cref="M:System.Object.Equals(System.Object)" />.</block>
          </para>
        </remarks>
      </Docs>
      <Excluded>0</Excluded>
      <AssemblyInfo>
        <AssemblyVersion>1.0.5000.0</AssemblyVersion>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
      </AssemblyInfo>
    </Member>
    <Member MemberName="Fragment">
      <MemberSignature Language="ILASM" Value=".property string Fragment { public hidebysig specialname instance string get_Fragment() public hidebysig specialname instance void set_Fragment(string value) }" />
      <MemberSignature Language="C#" Value="public string Fragment { set; get; }" />
      <MemberType>Property</MemberType>
      <ReturnValue>
        <ReturnType>System.String</ReturnType>
      </ReturnValue>
      <Parameters />
      <Docs>
        <summary>
          <para>Gets or sets the fragment component of the current instance.</para>
        </summary>
        <value>
          <para>A <see cref="T:System.String" /> containing the fragment component of the URI represented by the
 current instance.</para>
        </value>
        <remarks>
          <para>The <see cref="P:System.UriBuilder.Fragment" />
property contains any text following a fragment
marker ('#') in the URI, including the marker itself. When setting the <see cref="P:System.UriBuilder.Fragment" /> property, the property value does not include
the fragment marker as it is added to the property value by the set
operation. Specifying <see langword="null" /> for the <see cref="P:System.UriBuilder.Fragment" /> property value sets the property to
<see cref="F:System.String.Empty" />. If 
<see langword="null" /> or <see cref="F:System.String.Empty" /> are specified in a set 
operation, the fragment marker is not added to the property value.
The set operation does not escape the fragment value.</para>
Setting the <see cref="P:System.UriBuilder.Fragment" />
property to any value, including <see langword="null" /> , sets the <see cref="P:System.UriBuilder.Query" /> property to <see cref="F:System.String.Empty" /> .
</remarks>
      </Docs>
      <Excluded>0</Excluded>
      <AssemblyInfo>
        <AssemblyVersion>1.0.5000.0</AssemblyVersion>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
      </AssemblyInfo>
    </Member>
    <Member MemberName="GetHashCode">
      <MemberSignature Language="ILASM" Value=".method public hidebysig virtual int32 GetHashCode()" />
      <MemberSignature Language="C#" Value="public override int GetHashCode ();" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Int32</ReturnType>
      </ReturnValue>
      <Parameters />
      <Docs>
        <summary>
          <para>Generates a hash code for the current instance.</para>
        </summary>
        <returns>
          <para>A <see cref="T:System.Int32" /> containing the hash code for this instance.</para>
        </returns>
        <remarks>
          <para> The hash code is generated without the fragment component.
      For example, the URIs "http://www.contoso.com/index.htm#search"
      and "http://www.contoso.com/index.htm"
      produce the same hash code.</para>
          <para>The algorithm used to 
      generate the hash code is unspecified.</para>
          <para>
            <block subset="none" type="note"> This method 
      overrides <see cref="M:System.Object.GetHashCode" />. </block>
          </para>
        </remarks>
      </Docs>
      <Excluded>0</Excluded>
      <AssemblyInfo>
        <AssemblyVersion>1.0.5000.0</AssemblyVersion>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
      </AssemblyInfo>
    </Member>
    <Member MemberName="Host">
      <MemberSignature Language="ILASM" Value=".property string Host { public hidebysig specialname instance string get_Host() public hidebysig specialname instance void set_Host(string value) }" />
      <MemberSignature Language="C#" Value="public string Host { set; get; }" />
      <MemberType>Property</MemberType>
      <ReturnValue>
        <ReturnType>System.String</ReturnType>
      </ReturnValue>
      <Parameters />
      <Docs>
        <summary>
          <para>Gets or sets the Domain Name System (DNS) host name or
      IP address of a machine that provides access to the resource
      identified by the current instance.</para>
        </summary>
        <value>
          <para> A <see cref="T:System.String" /> containing the DNS host name or IP address of the host machine.</para>
        </value>
        <remarks>
          <para>Specifying <see langword="null" /> for 
   a set
   operation sets this property to <see cref="F:System.String.Empty" />
   
   .</para>
        </remarks>
      </Docs>
      <Excluded>0</Excluded>
      <AssemblyInfo>
        <AssemblyVersion>1.0.5000.0</AssemblyVersion>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
      </AssemblyInfo>
    </Member>
    <Member MemberName="Password">
      <MemberSignature Language="ILASM" Value=".property string Password { public hidebysig specialname instance string get_Password() public hidebysig specialname instance void set_Password(string value) }" />
      <MemberSignature Language="C#" Value="public string Password { set; get; }" />
      <MemberType>Property</MemberType>
      <ReturnValue>
        <ReturnType>System.String</ReturnType>
      </ReturnValue>
      <Parameters />
      <Docs>
        <summary>
          <para>Gets or sets the password information used to access the
      resource represented by the current instance.</para>
        </summary>
        <value>
          <para>A <see cref="T:System.String" /> containing the
   password used to access the resource represented by the current instance.</para>
        </value>
        <remarks>
          <para>Specifying <see langword="null" /> for 
   a set operation sets this property to <see cref="F:System.String.Empty" /> .</para>
        </remarks>
      </Docs>
      <Excluded>0</Excluded>
      <AssemblyInfo>
        <AssemblyVersion>1.0.5000.0</AssemblyVersion>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
      </AssemblyInfo>
    </Member>
    <Member MemberName="Path">
      <MemberSignature Language="ILASM" Value=".property string Path { public hidebysig specialname instance string get_Path() public hidebysig specialname instance void set_Path(string value) }" />
      <MemberSignature Language="C#" Value="public string Path { set; get; }" />
      <MemberType>Property</MemberType>
      <ReturnValue>
        <ReturnType>System.String</ReturnType>
      </ReturnValue>
      <Parameters />
      <Docs>
        <summary>
          <para>Gets or sets the path to the resource represented by the current instance.</para>
        </summary>
        <value>
          <para>A <see cref="T:System.String" /> containing the
   path to the resource represented by the current instance.</para>
        </value>
        <remarks>
          <para> This property returns the escaped form of the
      path information in the current instance. Values specified for set
      operations are escaped, and any backslashes are converted to forward
      slashes.</para>
          <para>Specifying <see langword="null" /> or <see cref="F:System.String.Empty" /> for a set operation sets
   this property to "/" .</para>
        </remarks>
      </Docs>
      <Excluded>0</Excluded>
      <AssemblyInfo>
        <AssemblyVersion>1.0.5000.0</AssemblyVersion>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
      </AssemblyInfo>
    </Member>
    <Member MemberName="Port">
      <MemberSignature Language="ILASM" Value=".property int32 Port { public hidebysig specialname instance int32 get_Port() public hidebysig specialname instance void set_Port(int32 value) }" />
      <MemberSignature Language="C#" Value="public int Port { set; get; }" />
      <MemberType>Property</MemberType>
      <ReturnValue>
        <ReturnType>System.Int32</ReturnType>
      </ReturnValue>
      <Parameters />
      <Docs>
        <summary>
          <para> Gets or sets the port number used to connect to
      the <see cref="P:System.UriBuilder.Host" /> referenced by the
      current instance.</para>
        </summary>
        <value>
          <para> A <see cref="T:System.Int32" /> containing a non-negative port number or -1.</para>
        </value>
        <remarks>
          <para> If
      no port was specified, the
   <see cref="P:System.Uri.Port" /> property returns the default port as determined by
      the scheme of the current instance. A port value of -1 indicates that
      the current scheme does not use a port, as is the case when the scheme of
      the current instance is the <see cref="F:System.Uri.UriSchemeFile" />
      scheme.</para>
          <para>
            <block subset="none" type="note"> For the list of
      default ports used with each scheme, see <see cref="P:System.Uri.Port" />
      .</block>
          </para>
        </remarks>
        <exception cref="T:System.ArgumentOutOfRangeException">The value specified for a set operation was less than zero.</exception>
      </Docs>
      <Excluded>0</Excluded>
      <AssemblyInfo>
        <AssemblyVersion>1.0.5000.0</AssemblyVersion>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
      </AssemblyInfo>
    </Member>
    <Member MemberName="Query">
      <MemberSignature Language="ILASM" Value=".property string Query { public hidebysig specialname instance string get_Query() public hidebysig specialname instance void set_Query(string value) }" />
      <MemberSignature Language="C#" Value="public string Query { set; get; }" />
      <MemberType>Property</MemberType>
      <ReturnValue>
        <ReturnType>System.String</ReturnType>
      </ReturnValue>
      <Parameters />
      <Docs>
        <summary>
          <para> Gets or sets the query component of the current instance.</para>
        </summary>
        <value>
          <para> A <see cref="T:System.String" /> containing the query component of the URI represented by the current instance.</para>
        </value>
        <remarks>
          <para>The <see cref="P:System.UriBuilder.Query" />
property contains any text following a query
marker ('?') in the URI, including the marker itself. When setting the <see cref="P:System.UriBuilder.Query" /> property, the property value does not include
the query marker as it is added to the property value by the set
operation. Specifying <see langword="null" /> for the <see cref="P:System.UriBuilder.Query" /> property value sets the property to
<see cref="F:System.String.Empty" />. If 
<see langword="null" /> or <see cref="F:System.String.Empty" /> are specified in a set 
operation, the query marker is not added to the property value.
The set operation does not escape the query value.</para>
Setting
the <see cref="P:System.UriBuilder.Query" />
property to any value, including <see langword="null" /> , sets the <see cref="P:System.UriBuilder.Fragment" /> property to <see cref="F:System.String.Empty" /> .
</remarks>
      </Docs>
      <Excluded>0</Excluded>
      <AssemblyInfo>
        <AssemblyVersion>1.0.5000.0</AssemblyVersion>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
      </AssemblyInfo>
    </Member>
    <Member MemberName="Scheme">
      <MemberSignature Language="ILASM" Value=".property string Scheme { public hidebysig specialname instance string get_Scheme() public hidebysig specialname instance void set_Scheme(string value) }" />
      <MemberSignature Language="C#" Value="public string Scheme { set; get; }" />
      <MemberType>Property</MemberType>
      <ReturnValue>
        <ReturnType>System.String</ReturnType>
      </ReturnValue>
      <Parameters />
      <Docs>
        <summary>
          <para>Gets or sets the scheme component of the current
      instance.</para>
        </summary>
        <value>
          <para>A <see cref="T:System.String" /> containing the
   scheme component of the current instance.</para>
        </value>
        <remarks>
          <para>Specifying <see langword="null" /> for a set operation sets this property to 
<see cref="F:System.String.Empty" /> . 
   If the value specified for a set operation contains a colon (":"), the scheme is
   set using the substring that includes all characters from the start of the value
   up to, but not including the colon. The characters in the value are converted to
   lower case.</para>
        </remarks>
      </Docs>
      <Excluded>0</Excluded>
      <AssemblyInfo>
        <AssemblyVersion>1.0.5000.0</AssemblyVersion>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
      </AssemblyInfo>
    </Member>
    <Member MemberName="ToString">
      <MemberSignature Language="ILASM" Value=".method public hidebysig virtual string ToString()" />
      <MemberSignature Language="C#" Value="public override string ToString ();" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.String</ReturnType>
      </ReturnValue>
      <Parameters />
      <Docs>
        <summary>
          <para>Returns the escaped form of the URI represented by the current instance. </para>
        </summary>
        <returns>
          <para> A <see cref="T:System.String" /> containing the escaped URI contained in the current <see cref="T:System.UriBuilder" /> instance.
   </para>
        </returns>
        <remarks>
          <para>The string returned by this method (shown here as uriString) is constructed as
      follows:</para>
          <c>
            <para>uriString = scheme + scheme delimiter + host.</para>
            <para>If port != -1 and host != "", then uriString = uriString + ":" + port.</para>
            <para>If host != "" and path != "" and path != "/", then uriString = uriString + "/".</para>
            <para>uriString = uriString + path.</para>
            <para>If fragment != "", then uriString = uriString + fragment, else uriString = uriString + query.</para>
          </c>
          <para>
            <block subset="none" type="note">This method overrides <see cref="M:System.Object.ToString" />.</block>
          </para>
        </remarks>
      </Docs>
      <Excluded>0</Excluded>
      <AssemblyInfo>
        <AssemblyVersion>1.0.5000.0</AssemblyVersion>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
      </AssemblyInfo>
    </Member>
    <Member MemberName="Uri">
      <MemberSignature Language="ILASM" Value=".property class System.Uri Uri { public hidebysig specialname instance class System.Uri get_Uri() }" />
      <MemberSignature Language="C#" Value="public Uri Uri { get; }" />
      <MemberType>Property</MemberType>
      <ReturnValue>
        <ReturnType>System.Uri</ReturnType>
      </ReturnValue>
      <Parameters />
      <Docs>
        <summary>
          <para>Gets a <see cref="T:System.Uri" /> instance
   constructed using the current instance.</para>
        </summary>
        <value>
          <para>A <see cref="T:System.Uri" /> containing the URI
   components of the current instance.</para>
        </value>
        <remarks>
          <para>This property returns the same <see cref="T:System.Uri" /> instance until
   modifications are made to the current instance, at which time a new <see cref="T:System.Uri" /> instance is constructed
   by passing the string representation of the current instance to the
<see cref="T:System.Uri" />(<see cref="T:System.String" /> ) constructor.</para>
        </remarks>
        <exception cref="T:System.UriFormatException">The URI constructed using the string representation of the current instance is in an invalid form.</exception>
      </Docs>
      <Excluded>0</Excluded>
      <AssemblyInfo>
        <AssemblyVersion>1.0.5000.0</AssemblyVersion>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
      </AssemblyInfo>
    </Member>
    <Member MemberName="UserName">
      <MemberSignature Language="ILASM" Value=".property string UserName { public hidebysig specialname instance string get_UserName() public hidebysig specialname instance void set_UserName(string value) }" />
      <MemberSignature Language="C#" Value="public string UserName { set; get; }" />
      <MemberType>Property</MemberType>
      <ReturnValue>
        <ReturnType>System.String</ReturnType>
      </ReturnValue>
      <Parameters />
      <Docs>
        <summary>
          <para>Gets or sets the user name information used to access the resource identified by the current instance.</para>
        </summary>
        <value>
          <para>A <see cref="T:System.String" /> containing the
   user name used to access
   the resource identified by the current instance.</para>
        </value>
        <remarks>
          <para>Specifying <see langword="null" /> for a set operation sets this property to 
<see cref="F:System.String.Empty" /> 
.</para>
        </remarks>
      </Docs>
      <Excluded>0</Excluded>
      <AssemblyInfo>
        <AssemblyVersion>1.0.5000.0</AssemblyVersion>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
      </AssemblyInfo>
    </Member>
  </Members>
  <TypeExcluded>0</TypeExcluded>
</Type>
