176 votes

HtmlEncode de la bibliothèque de classe

J'ai une bibliothèque de classes (en C#). Je dois encoder mes données en utilisant la méthode HtmlEncode. C'est facile à faire à partir d'une application Web. Ma question est la suivante : comment puis-je utiliser cette méthode à partir d'une bibliothèque de classes qui est appelée depuis une application console ?

214voto

George Chakhidze Points 1386

System.Net.WebUtility disponible en .NET 4 (Il n'est pas nécessaire de faire référence à System.Web.dll)

212voto

Russ Bradberry Points 5283

Importez System.Web Ou appelez l'utilitaire System.Web.HttpUtility qui le contient

Vous devrez ajouter la référence à la DLL si elle n'est pas déjà présente.

string TestString = "This is a <Test String>.";
string EncodedString = System.Web.HttpUtility.HtmlEncode(TestString);

41voto

Dan Diplo Points 16133

Si vous utilisez C#3, une bonne astuce consiste à créer une méthode d'extension pour simplifier encore plus les choses. Créez simplement une méthode statique (de préférence dans une classe statique) comme suit :

public static class Extensions
{
    public static string HtmlEncode(this string s)
    {
        return HttpUtility.HtmlEncode(s);
    }
}

Vous pouvez alors faire des choses intéressantes comme celles-ci :

string encoded = "<div>I need encoding</div>".HtmlEncode();

28voto

Palani Kumar Points 340

Essayez ceci, peut-être que cela vous aidera

System.Net.WebUtility.HtmlDecode(string);
System.Net.WebUtility.HtmlEncode(string);

7voto

AnthonyWJones Points 122520

Ajoutez une référence à System.Web.dll et vous pourrez utiliser la classe System.Web.HtmlUtility.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X