##使用源链接到DEBUG MVVMCROSS问题
源链接是一种强大的工具,它允许开发人员在调试过程中浏览MVVMCROSS等库的源代码。当对MVVMCross中的问题进行故障排除问题时,此功能特别有用,因为它使您可以从应用程序中直接导航到库的源代码中。这是有关如何使用源链接进行调试MVVMCROSS问题的分步指南:
###在Visual Studio中启用源链接
1。开放视觉工作室:首先在Visual Studio中打开您的项目。
2。启用源链接支持:转到“工具>选项>调试>常规”,并确保选择“启用源服务器支持”复选框。此选项允许Visual Studio在调试时从GitHub等源服务器下载源文件[1] [11]。
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]。
###故障排除
- 缓存问题:有时,源链接缓存可能会引起问题。您可以在MacOS或Windows上的MacOS上找到〜/caches/visualstudio/8.0/符号中的缓存并清除缓存[10]。
- 符号问题:确保正确分发并提供符号文件(PDB)。如果您遇到符号问题,请参阅gitlink readme进行故障排除提示[11]。
通过遵循以下步骤,您可以有效地使用源链接到DEBUG MVVMCROSS问题,并通过提供详细的报告或修复程序为社区做出贡献。
引用:[1] https://nicksnettravels.builttoroam.com/post-2018-07-31-debugging-and-contributing-to-mvvmcross-aspx/
[2] https://www.mvvmcross.com/documentation/fundamentals/viewmodel-lifecycle
[3] https://forum.qt.io/topic/135657/qt-windows-application-deployment-runs-runs-great-in-not-in-debug-b- but-not-not-firctunctional-firctunctional-a as deployed-sander-sandon-sandone-app
[4] https://learn.microsoft.com/en-us/visualstudio/debugger/how-to-to-to-improve-diarostics-debugging-with-sourcelink?view=vs-2022
[5] https://www.mvvmcross.com/documentation/fundamentals/navigation
[6] https://www.mvvmcross.com/documentation/advanced/customizing-usion-app-anp-setup
[7] https://stackoverflow.com/questions/21029462/debugging-mvvmcross-application-in-xamarin-samarin-studio-with-mvvmcross-cross-cross-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