マイコード以外にステップインする方法
マイコードは、主に自分の開発しているデバッグ版のアセンブリを指しており、デフォルトではNuGet Packageや.NET Frameworkのアセンブリにステップインすることはありません。
.pdbファイルが入手できるアセンブリやソースが入手できるもの、.NET Frameworkの公開されているソースにステップインするためには、以下の設定を行います。
Configure Visual Studio 2013 for debugging .NET framework
ソースがない場合に、アセンブリコードにステップインするためには、
「Show disassembly if source is not available」
にチェックを入れます。
実際にやってみると、最初はソースが見つからないケースでも、何度かやっているとステップインできるケースもありました。
NuGet Packageなどの.pdbファイルをダウンロードする場合は、以下の設定を行いますが、ソースが入手できる場合は、そちらが優先されているように思いました。
その場合は、デフォルトでは指定したアセンブリ以外のシンボルはロードしない設定にしておくと良いです。
なお、自家製のローカルなNuGet Packageでは、.pdbファイルをリリース版に含めてしまうのもありです。
<files> <file src="bin\Release\$id$.pdb" target="lib\portable-net45+win+wpa81+wp80" /> </files>
(プロジェクト出力をNuGet PackageにしているPCLの場合)
除外したアセンブリ以外のシンボルを全てロードする設定にしていると、Visual Studio起動時やプロジェクトロード時に時間がかかる他、デバッグ時にも時間がかかるので、通常は指定したアセンブリ以外のシンボルはロードしない設定にしましょう。
(GeneralでMy Codeにチェックを入れても良いですが、.NET Frameworkのソースが無効になるので・・・)
残念だったのは、Rxの.pdbのダウンロードが出来ているのにステップイン出来なかったこと・・・かな?
参考