不能包含Microsoft.Security.Application?

我不能包含Microsoft.Security.Application

using Microsoft.Security.Application; 

给出了这个错误:

命名空间“Microsoft”中不存在类型或命名空间名称“Security”(您是否缺少程序集引用?)

是的,我点击了Bin – > Add Reference … – > AntiXSSLibrary.dll ,它将它添加到包含AntiXSSLibray.xml的Bin文件夹中。

我重建了整个网站,但仍然没有。

我正在使用ASP .NET 3.5 C# – AntiXSSLibrary 4.0稳定

在您的网站上右键 – >转换为webapplication。 请参阅: 如何将ASP.NET网站转换为ASP.NET Web应用程序

如果你得到这个nuget,所有的扩展对象都是可见的

安装包AntiXSS

它解决了我的问题。

html = Microsoft.Security.Application.Encoder.HtmlEncode(model.SiteName), model = Microsoft.Security.Application.Encoder.HtmlEncode(json),

卸载并重新安装AntiXSS:

工具 – > NuGet包管理器 – >包管理器控制台(如果使用非Visual Studio 2013,UI可能会有所不同):

 Uninstall-Package AntiXSS Install-Package AntiXSS 

对于多项目解决方案,请务必将默认项目设置为遇到问题的任何一个。 如果卸载失败并且您可以处理可能出现的任何软件包依赖性问题,请使用Uninstall-Package -Force AntiXSS ,尽管我知道此软件包没有。

如果像我一样,你通过AntiXSSLibrary在类库中使用Nuget ,并得到上述错误:

  1. 删除通过Nuget获得的所有外部引用
  2. 删除Nuget包文件 – 这是解决方案根目录中的packages.config
  3. 删除packages目录 – 再次在解决方案的根目录中
  4. 重新安装所有组件

这里的答案对我有帮助。 我在我网站的bin文件夹中找到了AntiXssLibrary.dll。

您正在使用Microsoft.Security.Application;

使用System.Web.Security.Application尝试这个;

对我来说,情况恰恰相反。 我认为这是由于我正在使用的不同版本的AntiXSSScripting dll。