Autor Beitrag
UGrohne
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Veteran
Beiträge: 5502
Erhaltene Danke: 220

Windows 8 , Server 2012
D7 Pro, VS.NET 2012 (C#)
BeitragVerfasst: Di 06.05.08 13:27 
Hallo,

ich muss zum Redirecten von der aktuellen Seite den URL der aktuellen Seite umbauen, der bereits Parameter beinhaltet. Problem ist, dass ich nicht nur Parameter hinzufügen, sondern auch welche entfernen bzw. ändern muss. Gibt es hierzu im .NET Framework eine Klasse, die mir hierbei zur Seite steht oder muss ich das mittels String-Parsing selbst machen. Bisher bin ich hierzu nicht fündig geworden.

Danke ;)
Th69
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Moderator
Beiträge: 4764
Erhaltene Danke: 1052

Win10
C#, C++ (VS 2017/19/22)
BeitragVerfasst: Di 06.05.08 13:54 
Mittels der Klasse Uri (Uniform Resource Identifier) kannst du zumindestens schon mal lesend auf die einzelnen Werte zugreifen:
ausblenden C#-Quelltext
1:
2:
3:
Uri myUri = new Uri (sURL);

string sQuery = myUri.Query;

Nun kannst du mittels String.Split die einzelnen Parameter ermitteln:
ausblenden C#-Quelltext
1:
string[] params = sQuery.Split('&');					

Nun kannst du noch die einzelnen Parameter bearbeiten ('param=value').
Zum Bearbeiten der Liste solltest du jedoch besser eine List<string> verwenden (Löschen, Hinzufügen).

Zum Wiederzusammensetzen dann einfach String.Join verwenden.
UGrohne Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Veteran
Beiträge: 5502
Erhaltene Danke: 220

Windows 8 , Server 2012
D7 Pro, VS.NET 2012 (C#)
BeitragVerfasst: Di 06.05.08 14:23 
OK, genau diese Methode wollte ich eigentlich vermeiden, aber na gut. Dann schreib ich eben selbst eine Klasse dazu ;)

Danke jedenfalls.
Kha
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 3803
Erhaltene Danke: 176

Arch Linux
Python, C, C++ (vim)
BeitragVerfasst: Di 06.05.08 18:47 
Bei ASP.Net scheint dafür die interne Klasse HttpValueCollection zuständig zu sein. Also entweder per Reflection aufrufen oder einfach aus Reflector/Debug Sources den Quelltext klauen :zwinker: .