我刚刚从github检查了一个.NET 4.5.2 MVC项目。我可以在本地构建和运行它。但是,如果在Visual Studio尝试复制到bin
的{{1}}文件夹中找不到大量XML,则发布失败。错误消息包括obj\Release\Package\PackageTmp\bin
。这些文件在解决方案资源管理器中标有黄色警告标志,并且手动右键单击 - >从项目中排除解决了该问题。但是,在下一个git同步时,它们会再次包含在内。它们都有一个库的名称,例如Could not find file bin\Microsoft.Owin.Security.Cookies.xml
文件夹中将Newtonsoft.Json.dll
,而Visual Studio缺少bin
。
它们通常是自动创建的吗?他们应该以某种方式被排除在部署之外吗?
答案 0 :(得分:0)
Newtonsoft.Json.dll
属于Newtonsoft nuget包。三角形显示未安装所需的nuget包
现在,当您重建项目时,这些包应该自行安装。如果您使用的是旧版本的VS,则需要右键单击解决方案 - >手动选择Restore Nuget Pakage。
构建工作,因为git提交的代码必须已安装已安装的系统构建包同步。但在发布时,它会尝试重建并找到本地仓库中缺少的nuget包。
因此,不要排除谷歌并添加引用的nuget包。
与OP一样,您需要安装Newtonsoft
和Microsoft.Owin.Security.Cookies
。包。添加后,如果旧版本的黄色三角形参考仍然显示,则可以删除它们。