在ASP.NET 4.5中有一个新的命名空间System.Web.Security.AntiXss,其中包含AntiXssLibrary(
http://www.asp.net/aspnet/overview/aspnet-45/whats-new#_Toc318097382)4.0版的编码例程.
最新版本的AntiXssLibrary是4.2.1.
我非常困惑我在新项目中用于编码输出HTML的类型:内置System.Web.Security.AntiXss.AntiXssEncoder或来自AntiXssLibrary的Microsoft.Security.Application.AntiXssEncoder.有人会告诉我什么类型是首选使用,为什么?
解决方法
System.Web.*命名空间中的一个是Microsoft.Security.*命名空间中的一个克隆,但是System.Web稍微调整以获得更好的性能特征.我们建议您继续使用System.Web.
如果设置< httpRuntime encoderType>设置如http://www.asp.net/aspnet/overview/aspnet-45/whats-new#_Toc318097382所述,那么您只需使用内置的编码例程,如HttpUtility.HtmlEncode,实现将由Anti-XSS库提供.