用于System.Linq的Visual Studio .Net源步进

时间:2017-02-03 09:49:50

标签: c# .net linq visual-studio-2015

我试图通过System.Linq(特别是System.Linq.Enumerable.cs)中的一些.Net源代码,并遵循一些现有的指南来逐步完成.Net源代码:

How can I step into Microsoft's .NET framework source code?

https://blogs.msdn.microsoft.com/sburke/2008/01/16/configuring-visual-studio-to-debug-net-framework-source-code/

https://blogs.msdn.microsoft.com/mcsuksoldev/2010/09/09/debugging-the-net-framework-source-code/

但到目前为止一切都没有效果。我在VS 2015中禁用了“Just My Code”并启用了“.Net source stepping”。它显示为mscorelib.dll和System.Core.dll加载的模块,但System.Linq.dll无法加载符号。

1 个答案:

答案 0 :(得分:0)

您的麻烦可能是由LINQ本身的性质引起的。

调试LINQ有一些主要限制: https://msdn.microsoft.com/en-us/library/bb385795.aspx

例如:

  

LINQ to SQL

     

当您调试LINQ代码时,步进有一些   你应该知道的行为差异。

     

在LINQ to SQL查询中,谓词代码无法控制   调试器。因此,您无法进入谓词代码。任何   编译到表达式树的查询会产生超出的代码   调试器的控制。