类库中的HtmlEncode

时间:2009-07-17 17:04:13

标签: c# html-encode

我有一个类库(在C#中)。我需要使用HtmlEncode方法对数据进行编码。这很容易从Web应用程序。我的问题是,如何在从控制台应用程序调用的类库中使用此方法?

8 个答案:

答案 0 :(得分:203)

导入System.Web 或者调用包含它的System.Web.HttpUtility

如果已经存在

,则需要添加对DLL的引用
string TestString = "This is a <Test String>.";
string EncodedString = System.Web.HttpUtility.HtmlEncode(TestString);

答案 1 :(得分:199)

System.Net.WebUtility上课是 从.NET 4.0开始提供 (您不需要System.Web.dll依赖)。

答案 2 :(得分:40)

如果你正在使用C#3,一个好的建议是创建一个扩展方法,使其更简单。只需创建一个静态方法(最好是在静态类中),如下所示:

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

然后你可以做这样的好事:

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

答案 3 :(得分:25)

试试这个

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

答案 4 :(得分:7)

添加对System.Web.dll的引用,然后您可以使用System.Web.HtmlUtility类

答案 5 :(得分:3)

只需引用System.Web程序集,然后调用: HttpServerUtility.HtmlEncode

http://msdn.microsoft.com/en-us/library/system.web.httpserverutility.htmlencode.aspx

答案 6 :(得分:3)

如果您使用的是SharePoint 2010,使用以下代码行将避免引用整个System.Web库:

Microsoft.SharePoint.Utilities.SPHttpUtility.HtmlEncode(stringToEncode);

答案 7 :(得分:2)

如果您使用的是silverlight,请使用:

System.Windows.Browser.HttpUtility.HtmlEncode(...);