在VS2012中更新引用的项目程序集中的源文件 - 一个bug?

时间:2013-01-30 14:27:11

标签: asp.net reference visual-studio-2012 .net-assembly

在网站中,我引用了一个类库程序集。当我向源代码添加内容并构建解决方案时,更新不会反映到网站的bin文件夹中。我首先认为dll刷新不起作用,所以我的bin文件夹中的DLL没有更新到最新版本。但后来我发现了两件看起来很奇怪的事情:

  1. 我有一个公共结构,其中包含公共const字符串字段的数量。如果我更改任何这些字段的名称并构建解决方案,则更改不会反映在网站端。但是,如果我选择该字段名称,请右键单击它并选择"将oldname重命名为newname"然后构建,它的工作原理。
  2. 当我添加另一个公共const字符串字段并构建解决方案时,更新不会反映出来。
  3. 这是VS2012的已知错误还是预期功能?我能理解第一个案例。但第二种情况似乎绝对是一个错误,并没有像预期的功能。我想在向VS团队报告这个错误之前先检查一下。

    我没有使用Visual Studio 2010 ultimate这个问题。我目前使用的是Visual Studio 2012 Ultimate

1 个答案:

答案 0 :(得分:2)

这肯定是一个错误。我已经向Visual Studio团队报告了这个问题。但是对于那些遭受这个bug的人,我有一个解决方案,直到修复bug。

  1. 从bin文件夹中删除引用。 (x.dll,x.pdb,x.dll.refresh和x.XML文件,其中x是引用项目的名称。)
  2. 选择您的网站或项目,右键单击并单击添加参考
  3. 这是有所作为的部分。在左侧窗格中,选择Solution || Projects。如果要引用的项目不在中间窗格的列表中并单击导航到该项目,则单击窗口右下方的“浏览”,它将进入列表。选中该框,然后单击“确定”。我曾经选择Browse(不是Solution || Projects)并直接引用dll文件。您将注意到第一个(工作)选项是x.dll.refresh文件丢失。我知道这听起来很奇怪,但我不知道在缺少此文件时如何以及为何更新引用的dll。