Source LinkXamarin.Forms

Xamarin.FormsNuGet パッケージには、Source Linkマッピングが含まれます。 Source Linkは、NuGet パッケージに含まれるコンパイル済みライブラリをソース コード リポジトリにマップします。 Visual Studio は、デバッグ中にソース コード ファイルをダウンロードし、開発者がコードをステップ 実行して、ソースからビルドせずにパッケージのデバッグを有効にします。

Source Linkの使用方法の詳細については、「Source Link ドキュメント」を参照してください

警告

Visual Studio 2019 では、.NET デバッガーのSource Linkがサポートされていますが、現在、Mono デバッガーのSource Linkはサポートされていません。 そのため、Source Linkを使用して UWP アプリをデバッグできますが、Android アプリや iOS アプリはデバッグできません。 UWP アプリをデバッグする場合は、デバッグするライブラリの PDB ファイルが、アプリがコンパイルされる bin ディレクトリ内の AppX フォルダーにコピーされるようにする必要があります。

Source Linkを使用するには、外部コードのデバッグを有効にする必要があります。そうしないと、デバッガーは現在のソリューションに含まれていないコードの呼び出しをステップ実行します。 Visual Studio 2019 では、これは [デバッグ] セクションの [オプション] メニューにあります。

Visual Studio 2019 でSource Linkを有効にする

[自分のコードのみを有効にする] が無効になっており、[Source Linkのサポートを有効にする] が有効になっていることを確認します。

Source Linkを使用するには、外部コードのデバッグを有効にする必要があります。そうしないと、デバッガーは現在のソリューションに含まれていないコードの呼び出しをステップ実行します。 このオプションは、[デバッガー] セクションの [基本設定] ウィンドウにあります。

Visual Studio for MacでSource Linkを有効にする

[ 外部コードへのステップイン ] が有効になっていることを確認します。

外部パッケージのデバッグが有効になっている場合、Visual Studio は NuGet パッケージに含まれるSource Linkマッピングを使用して、外部ソース コードをダウンロードしてステップ実行します。 これは、 によって提供 Xamarin.Formsされるメソッドの呼び出しにブレークポイントを設定することでテストできます。

メソッドに設定された Xamarin.Forms ブレークポイント

[デバッガー] オプションで指定した設定に応じて、Visual Studio はソース ファイルをダウンロードしていることを警告します。

Visual Studio 外部コードの警告

Visual Studio でファイルのダウンロードを許可すると、デバッガーは外部コードにステップ インします。

Source Linkは、パフォーマンスのためにキャッシュを使用します。 [ソース] リンクのキャッシュ ディレクトリは、[シンボル] セクションの [デバッグ] の [オプション] メニューで定義されています。

Visual Studio Source Link キャッシュ

このメニューを使用すると、すべてのデバッグ シンボルのキャッシュ ディレクトリを指定できるほか、キャッシュされたシンボルに関する問題が発生した場合はキャッシュをクリアできます。

Source Linkは、パフォーマンスのためにキャッシュを使用します。 MacOS でのSource Linkのキャッシュ ディレクトリは です/Users/<username>/Library/Caches/VisualStudio/8.0/Symbols。 このフォルダーには、ソース ファイルのダウンロードに使用されるリポジトリを格納するサブフォルダーが含まれています。 NuGet パッケージのバッキング リポジトリが変更された場合は、これらのフォルダーを手動で削除してキャッシュを更新する必要がある場合があります。