Visual Studio 2013 + .Net 4.5.1 + 编辑并继续 64 位:不工作(Visual studio 2013 + .Net 4.5.1 + Edit and continue 64 bit: not working)

问题

据称 vs 2013 添加了对 64 位编辑和继续的支持(参见 http://blogs.msdn.com/b/visualstudioalm/archive/2013/06/26/debugging-support-for-64-bit-edit-and-continue -in-visual-studio-2013.aspx)。

但是我无法让它工作。

转到我的 .net 4.5.1 asp.net mvc Web 应用程序项目的属性并选中“启用编辑并继续”复选框后,我现在可以在断点处编辑代码。

问题是在保存并尝试继续踩低谷后,我收到一个错误对话框,说:

进行了无法编译的编辑。 在修复编译错误之前无法继续执行

在错误列表窗口中,这 2 个错误始终显示:

类型“System.IEquatable`1”是在未引用的程序集中定义的。 您必须添加对程序集“System.Runtime, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a”的引用。

类型“System.ValueType”是在未引用的程序集中定义的。 您必须添加对程序集“System.Runtime, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a”的引用。

这真的很奇怪的错误信息对吗? 不管我的改变多么微不足道,我总是得到同样的错误。

注意:我运行 Windows 7 / vs 2013 Ultimate,我的项目设置为在项目属性中使用 IIS Express。

回答1

这是引用可移植库和使用“编辑并继续”时的已知问题。 我们希望在 Visual Studio 的未来版本中修复此问题。

目前的解决方法:

  1. 解决方案资源管理器中右键单击存在问题的项目,然后选择卸载
  2. 右键单击卸载的项目并选择编辑
  3. 在第一个<PropertyGroup>元素的正文中,添加以下内容: <_ResolveReferenceDependencies>true</_ResolveReferenceDependencies>
  4. 重新加载项目保存更改

这应该可以解决构建问题。

注意:根据项目的不同,这可能会影响性能,不仅在 Edit & Continue 使用期间,而且只是在 VS 中的一般使用。

回答2

就我而言,唯一有效的解决方案是删除工作区并再次映射并获取。

要删除工作区, Source controlAdvancedWorkspaceRemove


更多相关内容:请点击查看