嵌入的资源 txt 文件未更新

Nib*_*Pig 3 c#

我有一个文件夹中有一个 .txt 文件的项目。.txt 文件设置为嵌入式资源。

我用这段代码来阅读它:

var assembly = Assembly.GetExecutingAssembly();
var manifestResources = assembly.GetManifestResourceNames();

string s = manifestResources.Single(c => c.EndsWith("Cats.txt"));
Run Code Online (Sandbox Code Playgroud)

这很好用。

但是我更新了 Cats.txt 并注意到我的项目没有更新。

我删除了 Cats.txt,发现它仍然可以正常工作并读取文件。

我尝试清理我的解决方案、重建和 iisreset,但它似乎坚持认为该文件仍然存在于程序集中,尽管我删除了它。

有任何想法吗?

小智 5

实际上,问题是通过先清理解决方案,然后再构建解决方案来解决的。我不必退出 Visual Studio 来更新我的嵌入式资源。


Nib*_*Pig 0

好的,我通过重新启动 Visual Studio 解决了这个问题。我不知道这对它有何影响。

当我检查“程序集”的属性时,CodeBase 属性指向完全不同的文件夹中的 DLL 的旧副本,该文件夹位于硬盘上的其他位置,我在另一个 Visual Studio 窗口中打开了该文件夹。

我不知道是什么底层机制导致这种情况发生,我肯定打开了解决方案的正确版本并且我正在调试它。

关闭解决方案并再次打开它修复了它。将其归因于奇怪的缓存行为或其他原因。