UriBuilder.Query Property


Gets or sets any query information included in the URI.

 property System::String ^ Query { System::String ^ get(); void set(System::String ^ value); };
public string Query { get; set; }
member this.Query : string with get, set
Public Property Query As String

Property Value


The query information included in the URI.


The following example sets the Query property.

UriBuilder^ baseUri = gcnew UriBuilder 
String^ queryToAppend = "param2=1234";
if (baseUri->Query != nullptr && baseUri->Query->Length > 1)
    baseUri->Query = baseUri->Query->Substring(1)+ "&" + queryToAppend;

    baseUri->Query = queryToAppend;
UriBuilder baseUri = new UriBuilder("http://www.contoso.com/default.aspx?Param1=7890");
string queryToAppend = "param2=1234";

if (baseUri.Query != null && baseUri.Query.Length > 1)
    baseUri.Query = baseUri.Query.Substring(1) + "&" + queryToAppend; 
    baseUri.Query = queryToAppend; 


The Query property contains any query information included in the URI. Query information is separated from the path information by a question mark (?) and continues to the end of the URI. The query information returned includes the leading question mark.

The query information is escaped according to RFC 2396.

Note In version 1.0 and 1.1 of the .NET Framework, setting the Fragment property to any value, including null, cleared the Query property, and setting the Fragment property to null or to String.Empty cleared the property. In version 2.0, however, the Fragment and Query properties are independent.

Note Do not append a string directly to this property. If the length of Query is greater than 1, retrieve the property value as a string, remove the leading question mark, append the new query string, and set the property with the combined string.

Applies to

See also