Heim >Backend-Entwicklung >C++ >Wie kann ich effizient elegante Abfragebräge in C#bauen?
Einführung
gut strukturierte Abfragebrände für URLs erstellen, ist eine häufige Aufgabe, wenn Sie mit Webdiensten interagieren. Während theoretisch einfach die Handhabung von Details wie die korrekte Verwendung von "&" -Teparatoren und die richtige URL -Codierung können umständlich sein.
optimierte Lösungen
Anstatt langwieriger, sich wiederholender Code zu verwenden, besteht eine effizientere und lesbare Methode darin, eine für diesen spezifischen Zweck entwickelte Versorgungsklasse anzuwenden. Während dem Standard .NET-Framework eine so integrierte Klasse fehlt, gibt es mehrere elegante Optionen.
nutzt httpvalueCollection
Ein Ansatz verwendet System.Web.HttpUtility.ParseQueryString(string.Empty)
, um ein beschreibbares HttpValueCollection
zu erstellen, das als NameValueCollection
fungiert. Fügen Sie Ihre Schlüsselwertpaare hinzu und rufen Sie dann ToString()
auf, um die Abfragezeichenfolge zu generieren:
<code class="language-csharp">NameValueCollection queryString = System.Web.HttpUtility.ParseQueryString(string.Empty); queryString.Add("key1", "value1"); queryString.Add("key2", "value2"); return queryString.ToString(); // Returns "key1=value1&key2=value2" (URL-encoded)</code>
queryHelpers für .NET Core -Anwendungen
Für .NET -Kernprojekte bietet Microsoft.AspNetCore.WebUtilities.QueryHelpers
eine einfachere Lösung:
<code class="language-csharp">const string url = "https://customer-information.azure-api.net/customers/search/taxnbr"; var param = new Dictionary<string, string>() { { "CIKey", "123456789" } }; var newUrl = new Uri(QueryHelpers.AddQueryString(url, param));</code>
Diese Methode behandelt automatisch URL -Codierung und fügt die Abfragezeichenfolge nahtlos zur Basis -URL hinzu.
Wählen Sie den besten Ansatz
auswählen Sowohl HttpValueCollection
als auch QueryHelpers
bieten effektive Möglichkeiten zum Konstruktion von Abfragesträgern. HttpValueCollection
eignet sich für herkömmliche ASP.NET -Anwendungen, während QueryHelpers
die bevorzugte Wahl für .NET -Kernanwendungen ist.
Das obige ist der detaillierte Inhalt vonWie kann ich effizient elegante Abfragebräge in C#bauen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!