UriBuilder.Query Eigenschaft

Definition

Ruft alle Abfrageinformationen ab, die im URI enthalten sind, einschließlich des führenden "?"-Zeichens, wenn nicht leer.

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

Eigenschaftswert

Die Abfrageinformationen, die im URI enthalten sind.

Beispiele

Im folgenden Beispiel wird die Query Eigenschaft festgelegt.

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

Hinweise

Die Query Eigenschaft enthält alle Abfrageinformationen, die im URI enthalten sind. Abfrageinformationen werden von den Pfadinformationen durch ein Fragezeichen (?) getrennt und am Ende des URI fortgesetzt. Die zurückgegebenen Abfrageinformationen enthalten das führende Fragezeichen. Beim Festlegen der Query Eigenschaft:

  • In .NET Framework wird immer ein Fragezeichen der Zeichenfolge vorangestellt, auch wenn die Zeichenfolge bereits mit einem Fragezeichen beginnt.
  • In .NET 5 (und .NET Core) und höheren Versionen wird der Zeichenfolge ein Fragezeichen vorangestellt, wenn es noch nicht vorhanden ist.

Die Abfrageinformationen werden gemäß RFC 2396 escaped.

Note

Um einen Wert an vorhandene Abfrageinformationen in .NET Framework anzufügen, müssen Sie das führende Fragezeichen entfernen, bevor Sie die Eigenschaft mit dem neuen Wert festlegen. Dies liegt daran, dass .NET Framework beim Festlegen der Eigenschaft immer das Fragezeichen vorgibt. .NET 5 (und .NET Core) und späteren Versionen sind in einem führenden Fragezeichen tolerant und werden nur bei Bedarf vorangestellt.

Gilt für:

Weitere Informationen