强制Visual Studio在嵌入式资源上重建更改

本文关键字:重建 资源 嵌入式 Visual Studio 强制 | 更新日期: 2023-09-27 18:19:24

我们有一个SQL文件,它是我们解决方案中的嵌入式资源。当sql文件更改时,如果没有实际的c#代码更改,则解决方案不会使用嵌入式资源重建项目。

我在其他解决方案中遇到过这个问题,只要我记得,我个人知道要做构建解决方案,以确保它得到构建…但这已经成为一个问题,为一些新的开发人员谁不记得这样做,并得到困惑时,他们对SQL文件的更改没有反映在调试时…所以我想知道是否有人知道一个简单的解决办法。

强制Visual Studio在嵌入式资源上重建更改

最简单的修复方法是"rebuild"而不是"build"。其他人会"清理",然后"构建",以确保100%的确定。

嵌入式资源不会在调试DLL中更新,除非输出DLL被截断,这只能保证在重建和清理时发生。

不幸的是,清理和重建似乎并不总是适用于资源文件。我的问题是一个字符串资源文件,以及我如何在VS2016中修复如下:

  1. 关闭。resx和。designer .cs,如果它们在IDE中打开
  2. 删除.Designer.cs类(右键单击,在解决方案资源管理器中删除)
  3. 在解决方案资源管理器中双击.resx文件打开
  4. 如果需要,将"Access Modifier"从"Public"更改为"No Code Generation",并保存
  5. 将"Access Modifier"从"No Code Generation"更改为"Public",并保存=> .Designer.cs代码应该更新

我在VS2017中遇到了同样的问题。

这是我的工作:

    打开.resx文件。确保您在资源编辑器中,不要使用XML编辑器,因为有时在那里所做的更改不会触发生成Designer.cs
  1. 确保Designer.cs未打开。
  2. 做一个小的改变,保存
  3. 撤销更改,保存