类库项目文件无法编译成.dll文件或进行调试

10
在我的解决方法中:
  • 我有一个编译成dll的类库项目。
  • 我有一个Web项目。

(我有多个解决方案,有不同的Web项目但是相同的类库)

在类项目中的一个文件 (utilities.cs) - 不知何故无法编译成.dll。

我对这个文件进行了更改,但网站上未显示更改。因此,我在.cs文件中设置了断点,并尝试运行它...... 断点没有被命中! 最终,我在调用函数的.aspx文件中放了一个断点。然后我逐行步进调试器,使它能够进入.cs文件,但是我收到了以下错误:

“此源文件已更改。它不再与用于构建正在调试的应用程序的文件版本匹配。”

所以utilities.cs中的代码没有更新到dll中。这很奇怪,因为我其他 .cs 文件中的代码正在更新(我尝试更改了几行代码),并且能够捕获调试。

有什么想法如何解决这个问题吗?或者问题的原因是什么?

5个回答

8

尝试以下操作:
解决方案资源管理器中右键单击Solution->属性->配置属性->确保你的类库的构建复选框已被选中


4
你需要找出为什么DLL无法构建:
  • 查看输出窗口是否有错误
  • 检查错误窗口
修复错误后重新构建。
你要调试的DLL来自代码的旧版本,该版本已经编译成功,调试器会捕捉到这个版本并尝试对其进行调试——它会抱怨代码和DLL不再匹配。
尝试对解决方案执行“生成”->“清理”,然后重新构建以查看错误。

2
在我的情况下,编译不通过的项目使用了稍微高一些版本的 .net。 - frosty

3

1
我按照 @nightcoder 的指示进行了操作,但需要做一个简单的更改。前往配置属性(在解决方案资源管理器中右键单击解决方案 -> 属性 -> 配置属性),并在配置选项中选择“所有配置”。这将为我创建 .dll 文件。 enter image description here

0

这种情况发生在我在一个项目的不同分支之间切换后,这些分支之间存在显着差异,我尝试了网上的所有解决方案,但都没有起作用。

最终,我不得不删除本地项目文件并再次从GitHub仓库克隆项目,之后当我启动项目时,项目构建成功且没有错误,并生成了dll。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接