不能包含 Microsoft.Security.Application?
Posted
技术标签:
【中文标题】不能包含 Microsoft.Security.Application?【英文标题】:Can't include Microsoft.Security.Application? 【发布时间】:2011-08-24 04:57:12 【问题描述】:我不能包含 Microsoft.Security.Application
using Microsoft.Security.Application;
给出这个错误:
命名空间“Microsoft”中不存在类型或命名空间名称“Security”(您是否缺少程序集引用?)
是的,我点击了 Bin -> Add Reference... -> AntiXSSLibrary.dll 并将它添加到 Bin 文件夹中,包括 AntiXSSLibray.xml。
我重建了整个网站,但仍然没有。
我正在使用 ASP .NET 3.5 C# - AntiXSSLibrary 4.0 Stable
【问题讨论】:
AntiXSSLibrary.dll 是正确的库吗?它似乎不同意你的看法。 是否有任何警告/消息?查看您的输出窗口。 无警告/消息。你的意思是正确的图书馆。当然是。 有命名冲突吗?一个叫 Mirosoft 的类?尝试使用全局添加命名空间( using global::Microsoft.Security.Application; ) 网站上的鼠标右键 -> 转换为 web 应用程序(对我来说,这解决了过去网站项目带来的很多问题)虽然我真的不明白为什么。否则,创建一个新网站并尝试重现问题。如果你不能,试着找出差异 【参考方案1】:如果你得到这个 nuget,所有扩展对象都是可见的
安装包 AntiXSS
它解决了我的问题。
html = Microsoft.Security.Application.Encoder.HtmlEncode(model.SiteName),
model = Microsoft.Security.Application.Encoder.HtmlEncode(json),
【讨论】:
【参考方案2】:卸载并重新安装 AntiXSS:
工具 --> NuGet 包管理器 --> 包管理器控制台(如果使用 Visual Studio 2013 以外的版本,UI 可能会有所不同):
Uninstall-Package AntiXSS
Install-Package AntiXSS
对于多项目解决方案,请务必将默认项目设置为遇到问题的项目。如果卸载失败并且你可以处理任何可能出现的包依赖问题,请使用Uninstall-Package -Force AntiXSS
,尽管我不知道这个包。
【讨论】:
【参考方案3】:在您的网站上用鼠标右键 -> 转换为 web 应用程序。见:How To Convert ASP.NET Website to ASP.NET Web Application
【讨论】:
【参考方案4】:如果像我一样,您通过Nuget
在类库中使用AntiXSSLibrary
,并收到上述错误:
-
删除您通过 Nuget 获得的所有外部引用
删除 Nuget 包文件 - 在解决方案的根目录中找到
packages.config
删除 packages
目录 - 再次在您的解决方案的根目录中
重新安装所有组件
【讨论】:
【参考方案5】:答案here 帮助了我。我在网站的 bin 文件夹中找到了 AntiXssLibrary.dll。
【讨论】:
【参考方案6】:您正在使用 使用 Microsoft.Security.Application;
试试这个 使用 System.Web.Security.Application;
对我来说,情况正好相反。我认为这是由于我使用的 AntiXSSScripting dll 版本不同。
【讨论】:
【参考方案7】:从工具中安装-Package AntiXSS --> NuGet 包管理器
【讨论】:
以上是关于不能包含 Microsoft.Security.Application?的主要内容,如果未能解决你的问题,请参考以下文章
我想将包含文件嵌套在包含文件中。为啥我不能在 Inno Setup 中这样做?