我有一个包含 30 个项目的大型解决方案,其中 2 个是 Web 项目(MVC 和 WebAPI)以及一堆后台类库项目。
我设置了 visual studio 以在 IIS 中托管 Web 项目。
如果我进行全新构建,然后对整个解决方案进行完整构建,那么通过浏览器访问这两个项目都可以正常工作。 (它们位于差异文件夹中并托管在 iis 中的差异“域”中)
如果我不做任何代码更改,只需重新构建 2 个 Web 项目之一,另一个就会停止工作。
需要说明的是,重建WebAPI工程导致MVC工程出错。反之亦然。
我得到的错误是说找不到 System.Web.Http.Formatter。详细信息说定位的程序集版本与引用版本不同。检查 bin 文件夹表明情况并非如此。
最佳答案
确保解决方案的所有资源都是最新的。如果您使用 Nuget,请更新所有项目中的所有包(先备份!)。听起来您的版本不匹配,复制到解决方案输出目录的 DLL 中缺少功能。它可能涉及更改每个项目的 Web.config 中的某些条目,但无法访问代码,因此很难确定。
更新每个库后报告,并确保解决方案中所有项目的版本匹配。
关于c# - 构建一个 web 项目破坏了解决方案中第二个的编译版本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34942075/