UriBuilder.Query Eigenschap

Definitie

Hiermee worden querygegevens opgehaald of ingesteld die zijn opgenomen in de URI, inclusief het voorloopteken '?' als deze niet leeg zijn.

public:
 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

Waarde van eigenschap

De querygegevens die zijn opgenomen in de URI.

Voorbeelden

In het volgende voorbeeld wordt de Query eigenschap ingesteld.

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

if (baseUri.Query != null && baseUri.Query.Length > 1)
    // Note: In .NET Core and .NET 5+, you can simplify by removing
    // the call to Substring(), which removes the leading "?" character.
    baseUri.Query = baseUri.Query.Substring(1) + "&" + queryToAppend; 
else
    baseUri.Query = queryToAppend;
open System

let baseUri = UriBuilder "http://www.contoso.com/default.aspx?Param1=7890"
let queryToAppend = "param2=1234"

baseUri.Query <-
    if baseUri.Query <> null && baseUri.Query.Length > 1 then
        // Note: In .NET Core and .NET 5+, you can simplify by removing
        // the call to Substring(), which removes the leading "?" character.
        baseUri.Query.Substring 1 + "&" + queryToAppend 
    else
        queryToAppend

Opmerkingen

De Query eigenschap bevat querygegevens die zijn opgenomen in de URI. Querygegevens worden gescheiden van de padinformatie door een vraagteken (?) en blijven doorgaan naar het einde van de URI. De geretourneerde querygegevens bevatten het voorloopvraagteken. Bij het instellen van de Query eigenschap:

  • In .NET Framework wordt altijd een vraagteken toegewezen aan de tekenreeks, zelfs als de tekenreeks al begint met een vraagteken.
  • In .NET 5 (en .NET Core) en latere versies wordt een vraagteken voorafgegaan aan de tekenreeks als deze nog niet aanwezig is.

De querygegevens worden ontsnapt volgens RFC 2396.

Note

Als u een waarde wilt toevoegen aan bestaande querygegevens in .NET Framework, moet u het voorloopvraagteken verwijderen voordat u de eigenschap instelt met de nieuwe waarde. Dit komt doordat .NET Framework altijd het vraagteken voorbereidt bij het instellen van de eigenschap. .NET 5 (en .NET Core) en latere versies zijn tolerant voor een voorloopvraagteken en worden deze alleen indien nodig voorbereid.

Van toepassing op

Zie ook