首页 > 解决方案 > 为什么在发布模式下构建失败?

问题描述

我在 VS2017 中有一个 C# MVC Web 应用程序,它引用了两个库项目 Crd.Core 和 Crd.Data。这两个库都引用了我存储在解决方案级别文件夹中的相同第三方 dll。在调试中一切正常。在 Release Crd.Core 中构建正常,但 Crd.Data 失败并出现两个错误:

Unable to generate a temporary class (result=1).    

CS0012 The type 'Consilium.TASKMobile.Common.Messages.UserType' is defined in an assembly that is not referenced. You must add a reference to assembly 'Consilium.TASKMobile.Common.Messages, Version=6.0.60037.0, Culture=neutral, PublicKeyToken=null'.

这个程序集肯定被引用了。两个项目从相同的中性位置引用完全相同的文件。我尝试移动引用的文件,并在重新添加它们之前删除引用。

两个项目的以下内容相同:

基本上我的两个项目在我能想到的检查的各个方面都是相同的,但其中一个项目无法在发布模式下构建,所以某处肯定有一些不同的地方。我错过了什么?我还能检查什么?

标签: buildmsbuildvisual-studio-2017releasesgen

解决方案


所以我花了相当多的时间在这上面,却一无所获,所以我想休息一下再回来。两周后,我准备为我的第一个用户测试部署一个发布版本,瞧,没有错误!

向最终在这里寻找解决方案的任何人道歉——我不知道是什么原因造成的,也不知道为什么问题消失了,我只想说 dll 或我对它们的引用都没有改变。


推荐阅读