2017-02-03 2 views
2

System.Linq(特にSystem.Linq.Enumerable.cs)の.Netソースのいくつかをステップアップしようとしています。ネットソース:Visual Studio .Netソースステッピングfor System.Linq

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/

しかし、これまでのところ、何も作業していません。私は「Just My Code」を無効にし、VS 2015で「.Net source stepping」を有効にしました。そのモジュールはmscorelib.dllとSystem.Core.dllのために読み込まれましたが、System.Linq.dllはシンボルを読み込めません。

+0

.NET 4.6.2はまだGDRではありません。すぐに実行する必要があります。推測の代わりに事実を得るには、[this post](http://stackoverflow.com/a/27655501/17034)に示されているトラブルシューティング手順を使用してください。 –

答えて

0

問題は、LINQ自体の性質によって引き起こされる可能性があります。

デバッグLINQは、いくつかの主要な制限があります:あなたはLINQコードをデバッグしているときは、ステッピングは、あなたがすべきいくつかの 行動の違いがあり

SQLに

LINQ:たとえば https://msdn.microsoft.com/en-us/library/bb385795.aspx

をについて知る。

LINQ to SQLクエリでは、述語コードがデバッガの の制御を超えています。したがって、述語コードにステップインすることはできません。式ツリーにコンパイルされた クエリは、 を超えるコードを生成します。

+0

本当は可能ですが、モジュールがロードできないことはありませんか?また、述語(または任意のデリゲート)を取らないEnumerable.Containsにステップインしようとしています。 –

関連する問題