ASP C#: Sonderzeichen: #, $, + cant pass-trough URL-parameter
Ich brauche, um die Datei aus dem virtuellen Ordner. Ich habe GetDocumentPreview.aspx, die es tun können. Die Parameter werden in der URL-Typ. Unten gute:
/GetDocumentPreview.aspx?name=filename&type=jpg
//But if I ask for file with #, &, + in name:
/GetDocumentPreview.aspx?name=&filename&type=jpg
/GetDocumentPreview.aspx?name=#filename&type=jpg
/GetDocumentPreview.aspx?name=+filename&type=jpg
Ich habe keine Datei, weil der Zeichen #, &, + (getestet hab ich alle Zeichen).
Wie kann ich pass #, &, + um URL-parameter. Ich brauche zur Verwendung von URL-parameter, da rufe ich diese Klasse aus dem Javascript-hover-tooltip mit Bild.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Müssen Sie entkommen, die besonderen chars :
Diese Funktion macht es am besten :
Vorsichtig sein , nicht mit UrlEncode
Sollten Sie codieren von Sonderzeichen wenn Sie platzieren Sie Sie in einem URL.
Können Sie
HttpServerUtility.UrlEncode
auf Ihrem string URL, bevor Sie in der hyperlinks/buttons redirect Lage. Ein Beispiel wäre:In Ihrem Fall sollten Sie eine UrlEncode-den Dateinamen, bevor Sie Sie in das URL-Zeichenkette, die Sonderzeichen, die erwähnt werden, sind:
Weitere können Sie hier sehen: http://msdn.microsoft.com/en-us/library/zttxte6w(v=vs. 110).aspx
Verwenden urlencoded Wert dieser Zeichen. Eine Liste finden Sie hier -
http://www.w3schools.com/tags/ref_urlencode.asp
beispielsweise
&
wäre -%26
.So,
/GetDocumentPreview.aspx?name=&filename&type=jpg
wäre -/GetDocumentPreview.aspx?name=%26filename&type=jpg