生成一个 Web 项目会破坏解决方案中第二个项目的编译版本
本文关键字:项目 解决方案 第二个 版本 编译 一个 Web | 更新日期: 2023-09-27 18:31:22
我有一个包含 30 个项目的大解决方案,其中 2 个是 Web 项目(MVC 和 WebAPI),其中包含一堆后台类库项目。
我设置了视觉工作室来托管IIS中的Web项目。
如果我执行一个干净的构建,然后是整个解决方案的完整构建,那么通过浏览器访问这两个项目就可以了。(它们位于差异文件夹中,并托管在 IIS 中的差异"域"上)
如果我不进行任何代码更改,只需重建 2 个 Web 项目中的一个,另一个项目就会停止工作。
需要明确的是,重新生成 WebAPI 项目会导致 MVC 项目出现错误。反之亦然。
我得到的错误是说找不到System.Web.Http.Formatter。详细信息表明找到的程序集版本与参考版本不同。检查 bin 文件夹显示情况并非如此。
确保解决方案的所有资源都是最新的。如果使用 Nuget,请更新所有项目中的所有包(首先备份!听起来您的版本不匹配,复制到解决方案的输出目录的 DLL 中缺少功能。它可能涉及更改每个项目的 Web.config 中的一些条目,但无法访问代码,很难确定。
更新每个库后,请进行报告,并确保解决方案中所有项目的版本匹配。
除了 Apache 和 Steve 的建议外,我还建议删除临时 ASP.NET 文件目录中的文件。 如果您好奇,这里有一篇关于该文件夹内容的好文章。