web-dev-qa-db-fra.com

Remplacement pour System.Web.HttpUtility.UrlEncode / UrlDecode ASP.NET 5

J'aimerais savoir s'il existe un remplaçant pour System.Web.HttpUtility.UrlEncode et UrlDecode.

Comme je l'ai trouvé pour Encode, il devrait être: Microsoft.Framework.WebEncoders.UrlEncoder.Default.UrlEncode.

Mais je n'ai pas trouvé UrlDecode. Est-ce qu'il y a un?

66
bezejmeny

System.Runtime.Extensions définit à la fois UrlDecode et HtmlDecode.

namespace System.Net
{
    public static partial class WebUtility
    {
        public static string HtmlDecode(string value) { return default(string); }
        public static string HtmlEncode(string value) { return default(string); }
        public static string UrlDecode(string encodedValue) { return default(string); }
        public static byte[] UrlDecodeToBytes(byte[] encodedValue, int offset, int count) { return default(byte[]); }
        public static string UrlEncode(string value) { return default(string); }
        public static byte[] UrlEncodeToBytes(byte[] value, int offset, int count) { return default(byte[]); }
    }
}

Mise à jour

Alors que System.Runtime.Extensions Définit l’extension, comme vous pouvez le remarquer dans son code, la classe à appeler est System.Net.WebUtility

Option 1 : System.Net.WebUtility

Actuellement, il n'y a pas de plans publics pour inclure Decode dans Microsoft.Framework.WebEncoders.

Utilisation

System.Net.WebUtility.UrlEncode(myString)
System.Net.WebUtility.UrlDecode(myString)

Option 2 : System.Text.Encodings.Web.UrlEncoder

Ceci est enregistré dans le conteneur de service principal asp.net et est injectable dans vos contrôleurs, etc.

117