MVVMCrossの問題をデバッグするためのソースリンクを使用します
ソースリンクは、開発者がデバッグ中にMVVMCrossのようなライブラリのソースコードを踏むことができる強力なツールです。この機能は、MVVMCross内の問題のトラブルシューティングの場合に特に役立ちます。これにより、アプリケーションからライブラリのソースコードに直接ナビゲートできます。 MVVMCrossの問題をデバッグするためにソースリンクを使用する方法に関する段階的なガイドを次に示します。
Visual Studioでリンクするソースを有効にします
1.オープンビジュアルスタジオ:Visual Studioでプロジェクトを開くことから始めます。
2。ソースリンクのサポートを有効にする: `ツール>オプション>デバッグ>一般`に移動し、「ソースサーバーサポートの有効化」チェックボックスが選択されていることを確認します。このオプションにより、Visual Studioは、[1] [11]をデバッグするときに、GitHubなどのソースサーバーからソースファイルをダウンロードできます。
3.プロジェクト設定でソースリンクを有効にする:独自のライブラリを構築し、ソースリンクを有効にする場合は、プロジェクト設定を構成する必要があります。これには、「True」などのプロパティの設定や、プロジェクトファイルにソースリンクパッケージを含めることが含まれます[4]。
###ソースリンクを使用したデバッグ
1.トリガーデバッグアクション:ソースリンクを使用するには、デバッグアクションをトリガーする必要があります。これは、ブレークポイントを設定するか、Visual Studioの「例外設定」ウィンドウですべての例外を有効にすることで実行できます。これにより、MVVMCross内で例外が発生すると、Visual Studioがその時点で壊れ、MVVMCrossソースコードに足を踏み入れることができます[1]。
2. MVVMCrossソースコードへのステップ:例外が起きられたら、ブレークポイントがヒットしたら、Visual Studioは、まだ利用できない場合はMVVMCrossのソースコードをダウンロードするように求められます。ダウンロードしてデバッグを続けることを選択できます。これにより、MVVMCrossソースコードに直接使用され、変数を検査し、追加のブレークポイントを設定し、MVVMCrossコードがプロジェクトの一部であるかのようにデバッグを続けることができます[1] [4]。
3。遊び場のサンプルで問題を再現する:メインプロジェクトで再現できない問題が発生した場合は、MVVMCross Playgroundサンプルを使用してみてください。このサンプルプロジェクトはMVVMCrossソースコードに含まれており、MVVMCrossに固有の問題を分離するのに役立ちます[1]。
4. MVVMCrossに貢献する:MVVMCross内の問題を特定する場合、GitHubで問題を提起するか、修正でプルリクエストを送信することで貢献できます。ソースリンクを使用すると、コミュニティにとって非常に貴重な問題に関する詳細な情報が提供されます[1]。
###トラブルシューティング
- キャッシュの問題:場合によっては、ソースリンクキャッシュが問題を引き起こす場合があります。 `〜/library/caches/visualStudio/8.0/Symbols」のキャッシュを見つけてクリアできます。
- シンボルの問題:シンボルファイル(PDB)が正しく分散され、利用可能であることを確認してください。シンボルで問題が発生した場合は、トラブルシューティングのヒント[11]については、gitlink readmeを参照してください。
これらの手順に従うことにより、Source Linkingを使用してMVVMCrossの問題をデバッグし、詳細なレポートまたは修正を提供することでコミュニティに貢献できます。
引用:[1] https://nicksnettravels.builttoroam.com/post-2018-07-31-debugging-and-contibuting-to-mvvmcross-aspx/
[2] https://www.mvvmcross.com/documentation/fundamentals/viewmodel-lifecycle
[3] https://forum.qt.io/topic/135657/qt-windows-application-deployment-issue-runs-great-in-debug-not-cond-function-as deployed-stand-alone-app
[4] https://learn.microsoft.com/en-us/visualstudio/debugger/how-to-improve-diagnostics-debugging-with-sourcelink?view=vs-2022
[5] https://www.mvvmcross.com/documentation/fundamentals/navigation
[6] https://www.mvvmcross.com/documentation/advanced/customizing-using-app-and-setup
[7] https://stackoverflow.com/questions/21029462/debugging-mvvmcross-application-in-xamarin-studio-with-mvvmcross-sources
[8] https://www.mvvmcross.com/logging
[9] https://www.mvvmcross.com/documentation/fundamentals/linking
[10] https://blog.verslu.is/development/clearing-source-link-cache/
[11] https://www.mvvmcross.com/documentation/contributing/debugging-with-symbols