2009-03-13 3 views
1

Ich habe ein Objekt wie folgt aus:URL dekodieren nicht ordnungsgemäß mit Anfrage [] in C#

public class adapterContext { 
    public HttpRequest Request; 
} 
adapterContext ac = new adapterContext(); 
ac.Response = context.Response; 

Ich gehe diese Aufgabe zu meiner Funktionen und verwenden ac.Request [ „“], um meine URL-Variablen zu erhalten. Jedoch übersetzt das irgendwie nationale/Sonderzeichen nicht korrekt. Wenn ich das zB als Teil der URL benutze: prospectName = Tester +% e6 +% f8 +% e5

bekomme ich "Tester???"

Vom Debugger erhalte ich: ac.Request [ "prospectName"] [7] 65533 '' char

jemand eine Idee, wie ich dieses Problem beheben soll?

Antwort

3

gibt es eine nette Funktion, sollten Sie kümmern: HttpUtility.UrlDecode(string, Encoding) ... sonst müssen Sie die globalization setting in Ihrer web.config anpassen (requesten, responseen ...)

+0

Das ist nichts tut, ich UTF versucht -8, ASCII und Unicode. – devzero

+0

Btw, Firebug zeigt, dass die gültige Kodierung UTF-8 sein sollte, die default sein sollte, daher sollten Globalisierung und urlDecode nicht benötigt werden. – devzero

+0

Ich schlage vor, dass Sie bestimmte Umlaute verwenden, die nicht maskiert sind. Hast du jemals etwas wie iso-8859-1 versucht? Sie haben 2 Möglichkeiten: Entweder Sie setzen die Globalisierung auf Ihre Codierung, oder Sie übergeben die Werte richtig decodiert –

Verwandte Themen