【问题标题】:"Ignore and continue" while debugging on Visual Studio (2008 & 2010) in C# possible?在 C# 中的 Visual Studio(2008 和 2010)上调试时“忽略并继续”可能吗?
【发布时间】:2011-04-29 07:46:28
【问题描述】:

当您的解决方案中的 C# 文件在调试时发生更改时,有没有办法“忽略并继续”而不是“重新启动”和“编辑”?

重现方式:

  1. 我有一个包含项目 A 和项目 B 的解决方案。

  2. 在调试项目 A 时,我对项目 B 进行了更改(典型示例是网络客户端/服务器调试会话)。

  3. 如果“编辑”失败,则无法在 A 上进行调试会话(即使代码在执行方面完全不相关)。

我在 VS 选项中搜索,但运气不佳。

将解决方案拆分为多个解决方案文件不是一个可接受的答案(我将文件作为链接,我已经这样做了,但由于库和依赖关系,这证明不方便......这就是在第一名)

【问题讨论】:

  • 有一个设置允许运行代码与源代码不同。但是,一旦代码在运行时发生更改,Vs.Net 就会拒绝更改,只要更改没有加载到 Vs.Net 中,您就应该是安全的。

标签: c# visual-studio-2010 visual-studio-debugging


【解决方案1】:

撤消更改 (Ctrl+Z) 并按 F5 继续。

如果您想保留更改以供以后使用,可以将它们保存在剪贴板中,或者稍后使用 Ctrl+Y 恢复它们。

我假设不存在忽略选项,因为调试不同步的源代码没有多大意义,例如调试器将不再突出显示正确的行等。

【讨论】:

  • 这确实可以解决,除了我需要编译对客户端代码的更改并在不需要更改的正在运行的服务器上再次运行。 C++ 在代码过时时用紫色的代码行做得很好,为什么 C# 不能简单地做呢?
【解决方案2】:

编辑并继续功能存在设计上的限制。

这是 VS 2010 的列表:

http://msdn.microsoft.com/en-us/library/ms164927.aspx

【讨论】:

  • 我不想编辑并继续。我希望 VS 忽略我对源代码的更改并继续。
  • 在那种情况下,这是不可能的(也是合理的)。
  • 那么 C++ 更合理:)
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2010-12-09
  • 2016-03-06
  • 2013-03-13
  • 2013-05-31
相关资源
最近更新 更多