クラスライブラリ(C#)があります。HtmlEncodeメソッドを使用してデータをエンコードする必要があります。これは、Webアプリケーションから簡単に実行できます。私の質問は、コンソールアプリケーションから呼び出されているクラスライブラリからこのメソッドをどのように使用するかです。
8 に答える
System.Webをインポートするか、それを含むSystem.Web.HttpUtilityを呼び出します
DLLがまだ存在しない場合は、DLLへの参照を追加する必要があります。
string TestString = "This is a <Test String>.";
string EncodedString = System.Web.HttpUtility.HtmlEncode(TestString);
System.Net.WebUtility
クラスは.NET4.0以降で利用できます(System.Web.dllの依存関係は必要ありません)。
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();
これを試して
System.Net.WebUtility.HtmlDecode(string);
System.Net.WebUtility.HtmlEncode(string);
System.Web.dllへの参照を追加すると、System.Web.HtmlUtilityクラスを使用できます。
System.Webアセンブリを参照してから、HttpServerUtility.HtmlEncodeを呼び出します。
http://msdn.microsoft.com/en-us/library/system.web.httpserverutility.htmlencode.aspx
SharePoint 2010を使用している場合は、次のコード行を使用すると、System.Webライブラリ全体を参照する必要がなくなります。
Microsoft.SharePoint.Utilities.SPHttpUtility.HtmlEncode(stringToEncode);
Silverlightを使用している場合は、次を使用してください。
System.Windows.Browser.HttpUtility.HtmlEncode(...);