伙计我在添加对Microsoft.Web.Infrastructure.dll的引用时非常痛苦,也许有人可以帮我解决这个问题。
我正在尝试添加对Microsoft.Web.Infrastructure.dll的引用,当我点击在VS中添加引用时,引用已添加到web.config,因为dll在GAC中。
如果以这种方式添加引用,则在部署期间不会复制dll,并且我们有构建脚本,可以在几台服务器上安装它。
我试图从我的gac中删除dll但是......没有任何成功,因为它是在某些其他GAC为.NET 4或4.5发明的(遗憾的是没有找到关于此的足够信息)
我通过在Package Manager控制台中运行Install命令找到了问题的堆栈溢出解决方案,但在我们的环境中,我们不允许在网络外连接,因此无法连接到nuget,因为我们的网络不是根据安全政策连接到互联网...
任何人都可以建议一种方法来解决它,而无需运行包管理器?
答案 0 :(得分:7)
为Microsoft.Web.Infrastructure.dll设置 CopyLocal = true 。这将迫使VS在编译/部署期间将二进制文件复制到bin目录。可以在http://msdn.microsoft.com/en-us/library/t1zz5y8c(v=vs.100).aspx找到执行此操作的说明。
编辑:如果这不起作用,您的VS版本可能会要求您明确地将.dll删除到bin目录中。有关详细信息,请参阅http://msdn.microsoft.com/en-us/library/ez524kew(v=vs.100).aspx。