Split-String (Pfad von Uri) basierend auf "/"

9

Ich frage mich, ob mir jemand in die richtige Richtung zeigen könnte. Was ich gerne erreichen würde, ist eine Zeichenfolge zu teilen, die darauf basiert, dass sie ein '/' enthält. Zum Beispiel, wenn ich hatte: www.site.com/course/123456/216 in Code (c #) Ich möchte in der Lage sein, die Zeichenfolge in Code zu teilen, so dass 123456 könnte Variable Param1 zugeordnet werden und 216 Param2 zugewiesen werden (Natürlich ist der 'freundliche' Name der Seite). Wenn ich ein drittes '/' in die Saite einfügen würde, würde ich gerne Param3 usw. Usw.

Idealerweise würde ich gerne diesen Code irgendwo platzieren können, wo ich ihn in die Benutzersteuerung mit einbeziehen könnte, die ich zum Funktionieren brauche.

    
SxChoc 01.07.2013, 20:28
quelle

6 Antworten

17

Uri.Segments vielleicht, wonach Sie suchen:

%Vor%

Ergebnisse in [ "/", "foo/", "bar/", "index.html" ]

    
Alexei Levenkov 01.07.2013 20:58
quelle
6

Warum nicht einfach Split verwenden?

%Vor%

Das Array wird die gesamte Zeichenfolge aufgebrochen

index 0 wäre "www.site.com" und so weiter.

    
Smeegs 01.07.2013 20:31
quelle
2
%Vor%     
Robert McKee 01.07.2013 20:53
quelle
2

Wenn Sie die Annahme so treffen, dass die Werte nicht % / enthalten:

%Vor%

Das würde dich beginnen. Nun, wenn Sie versuchen, sie auf echte Variablen zu setzen, dann müssen Sie ein wenig Casting und Reflexionen einsetzen, aber Ihre Frage ist nicht annähernd klar genug, um dort echte Annahmen zu treffen.

BEARBEITEN

Um diesen Code wiederverwendbar zu machen, würde ich eine Erweiterungsmethode erstellen:

%Vor%

weil Sie das tun könnten:

%Vor%     
Mike Perrenoud 01.07.2013 20:33
quelle
1

Ссылка

string QueryString = "1234/567/890"; string[] QueryArray = QueryString.Split('/');

Jetzt QueryArray[0] = 1234 , QueryArray[1] = 567 , QueryArray[2] = 890 ,

    
Alfie 01.07.2013 20:32
quelle
1

url: server/func2/SubFunc2

// Erhalte Pfadkomponenten. Nachlaufende Trennzeichen. Gibt {"/", "func2 /", "sunFunc2"} zurück. string[] pathsegments = myUri.Segments;

    
Max Hodges 12.01.2016 05:16
quelle

Tags und Links