Ho una libreria di classi (in C#). Ho bisogno di codificare i miei dati usando il metodo HtmlEncode. Questo è facile da fare da un'applicazione web. La mia domanda è, come posso utilizzare questo metodo da una libreria di classi che viene chiamata da un'applicazione console?HtmlEncode from Class Library
risposta
Import System.Web Oppure chiamare lo System.Web.HttpUtility che lo contiene
Sarà necessario aggiungere il riferimento alla DLL, se non v'è già
string TestString = "This is a <Test String>.";
string EncodedString = System.Web.HttpUtility.HtmlEncode(TestString);
Proprio di riferimento il gruppo System.Web e quindi chiamare: HttpServerUtility.HtmlEncode
http://msdn.microsoft.com/en-us/library/system.web.httpserverutility.htmlencode.aspx
Vedi commento a Russ – AnthonyWJones
Aggiungere un riferimento a System.Web.dll e quindi è possibile utilizzare la classe System.Web.HtmlUtility
Se si utilizza C# 3, un buon consiglio è quello di creare un metodo di estensione per renderlo ancora più semplice. Basta creare un metodo statico (preferibilmente in una classe statica) in questo modo:
public static class Extensions
{
public static string HtmlEncode(this string s)
{
return HttpUtility.HtmlEncode(s);
}
}
È quindi possibile fare roba pulita come questa:
string encoded = "<div>I need encoding</div>".HtmlEncode();
System.Net.WebUtility
classe è disponibile a partire da NET 4.0 (Non hai bisogno della dipendenza da System.Web.dll).
Grazie, Ora posso usare il profilo client .NET 4 invece del framework completo! – Annagram
Nel caso in cui si sta lavorando con Silverlight, utilizzare questo:
System.Windows.Browser.HttpUtility.HtmlEncode(...);
Nel caso in cui si sta utilizzando SharePoint 2010, utilizzando la seguente riga di codice eviterà di dover fare riferimento l'intera libreria System.Web:
Microsoft.SharePoint.Utilities.SPHttpUtility.HtmlEncode(stringToEncode);
Prova questa
System.Net.WebUtility.HtmlDecode(string);
System.Net.WebUtility.HtmlEncode(string);
Questo è molto meglio perché non devo aggiungere riferimenti a System.Web nel mio progetto WPF. – newman
È necessario creare un'istanza della classe Server Utility che è stato progettato per sostenere un corrente in corso Richiedi ed emula le funzionalità del vecchio oggetto ASP Server. HttpUtility è un insieme più leggero di metodi statici. – AnthonyWJones
debitamente annotato e modificato –
argomenti di capitalizzazione: HtmlEncode – Nathan