2011-04-22 43 views
10

我一直在搞VS 2010调试设置,试图进入.NET框架工作。那么,我无法让它工作。我也尝试了反射器VS插件,并在一个点上工作。“调试器无法继续运行该过程。”

然后,我开始随机收到此错误:当我有一个调用IEnumerable<T>.ToList()线断点

enter image description here

发生。如果我尝试在设置了断点的那一行上逐步或步入,则会出现此错误对话框,并且我的调试会话结束。

如果我将断点移动到下面的行,调试器会使它通过ToList()调用!

我已经尝试了以下无济于事:

  • 拆卸反光插件。
  • 撤销我在工具>选项>调试窗口中的更改(取消选中进入.NET Framework的选项;取消选中源服务器选项;仅检查我的代码选项)。
  • 工具>选项>调试>符号窗口中未经检查的Microsoft源服务器。
  • 清除了符号缓存。

这是怎么回事?

+0

你能张贴您的调用堆栈中的断点命中时? – 2011-04-27 19:10:18

+0

我可以,但它不会帮助,因为我根本无法进入。我知道如果我删除了断点,那么该行会引发StackOverflowException。 – 2011-04-27 20:13:41

回答

1

我来自同一个问题的困扰....

我找到了一个解决方案,它听到了罕见....

调试器无法继续运行process.Process终止 虽然调试代码一步一步,你会发现该行,从错误重定向的地方。 如果您在该文件的任何位置使用“ToString()”,请删除该文件。 而不是,您可以使用值/文本。 它工作正常。 ............

如果你没有使用ToString()任何地方在程序中,然后通过完全删除重新加载项目副本。

2

这是一个ToString()覆盖,使调试器崩溃! (在评估之后,调试器将使用ToString()方法向您显示结果)。如果您在ToString()中遇到异常,您将永远不会发现异常,因为您无法对调试器行为进行编码。

我得从MSDN

0

这个答案,该信息也会显示出来,当你试图调试Xamarin的解决方案,但你必须选择为启动项目,而不是您的应用程序,项目类库。

0

我有同样的问题。我将其追溯到一个类(逐步调试),最后到一个属性(评论所有代码,然后逐步取消注释)。

该属性从表中返回了一个类型化的数据集。数据集

private typedDataSet myDataSet 
{ 
    return this.DataSet as typedDataSet; 
} 

这是在一个DataTable部分类。 我删除了这个属性后,一切都变好了。

4

因为这是我搜索答案时找到的第一个地方,所以我会添加我发现的内容。

在我的情况下,我在解决方案中设置了调试器来启动多个项目。由于某些原因,Visual Studio更改了此设置,因此没有项目开始。纠正解决方案中的设置立即解决了问题。

这个问题并不难解决,但是错误信息不仅仅是有点刺激。

3

我刚刚发现this answer有用。我所做的只是将我的创业项目改为另一项,并恢复正常。

我的项目很可能在某处丢失了此设置,并重置它使其再次可用。

0

我遇到了一个来自复制/粘贴代码错误的问题。而不是获取/设置私有成员变量,我做了自己的get/set。当我引用的其他代码调试器终止物业(2010):

public bool ProdToDeve 
{ 
    get { return ProdToDeve; } // <= missing underbar 
    set { ProdToDeve = value; } 
} 
private bool _ProdToDeve = false; 
0

它发生在我,当我在做以下几点:

throw new Exception(timeout.TotalSeconds + " second(s)");

这是因为timeout.TotalSeconds.ToString()这的确是一个覆盖方法为double类型的对象,正在抛出Parameter not valid异常。

最后,为了安全我最后做了以下内容:

throw new Exception(System.Convert.ToString(timeout.TotalSeconds));