Warum ist die Dokumentation von .NET für HttpUtility.UrlPathEncode für .NET 4.5-Status
Nicht verwenden; nur für Browserkompatibilität gedacht. Verwenden Sie UrlEncode.
UrlEncode macht nicht dasselbe, es codiert eine Zeichenfolge für den Parameterteil einer URL, nicht für den Pfadteil. Gibt es eine bessere Möglichkeit, eine Zeichenkette für den Pfadteil zu codieren und warum sollte ich diese Funktion nicht verwenden, die seit 1.1 im Framework ist und funktioniert?
Basierend auf MSDN empfehlen sie, UrlEncode zu verwenden, um zu gewährleisten, dass es für alle funktioniert Plattformen und Browser
Sie können eine URL mithilfe der UrlEncode-Methode oder der UrlPathEncode-Methode codieren. Die Methoden liefern jedoch unterschiedliche Ergebnisse. Die UrlEncode-Methode konvertiert jedes Leerzeichen in ein Pluszeichen (+). Die UrlPathEncode-Methode konvertiert jedes Leerzeichen in die Zeichenfolge "% 20", die ein Leerzeichen in hexadezimaler Schreibweise darstellt. Verwenden Sie die UrlPathEncode-Methode, wenn Sie den Pfadabschnitt einer URL codieren, um eine konsistent decodierte URL zu gewährleisten, unabhängig davon, welche Plattform oder welcher Browser die Decodierung durchführt.
Auch UrlEncode verwendet UTF-8-Codierung. Wenn Sie Abfragezeichenfolgen in verschiedenen Sprachen wie Arabisch senden, sollten Sie UrlEncode
verwendenTags und Links .net asp.net url-encoding urlencode