Eine häufige Aufgabe beim Aufrufen von Webressourcen aus einem Code ist die Erstellung eines Abfrage-Strings, der alle erforderlichen Parameter enthält. Das ist zwar keine Raketenwissenschaft, aber es gibt ein paar raffinierte Details, um die man sich kümmern muss, wie zum Beispiel das Anhängen eines &
wenn nicht der erste Parameter, Kodierung der Parameter usw.
Der Code dafür ist sehr einfach, aber ein bisschen mühsam:
StringBuilder SB = new StringBuilder();
if (NeedsToAddParameter A)
{
SB.Append("A="); SB.Append(HttpUtility.UrlEncode("TheValueOfA"));
}
if (NeedsToAddParameter B)
{
if (SB.Length>0) SB.Append("&");
SB.Append("B="); SB.Append(HttpUtility.UrlEncode("TheValueOfB")); }
}
Dies ist eine so häufige Aufgabe, dass man erwarten würde, dass es eine Hilfsklasse gibt, die dies eleganter und lesbarer macht. Beim Durchsuchen von MSDN habe ich keine gefunden, was mich zu der folgenden Frage bringt:
Was ist die eleganteste und sauberste Methode, die Sie kennen, um dies zu tun?
6 Stimmen
Sie verpassen nichts. Die Erstellung von Querystrings ist eine große Lücke im Framework, die ich versucht habe, mit Flurl .
2 Stimmen
Ich persönlich verwende die Technik, auf die ich in dieser Frage Bezug genommen habe:
0 Stimmen
Sie haben mich gerade auf die Idee gebracht, dass ich einen bauen sollte. new UrlBuilder(existing).AddQuery("key", "value").ToString()
0 Stimmen
Diese Antwort gilt auch für leicht verschachtelte Objekte Linkbeschreibung hier eingeben