MAUI 调试:无法进入依赖项目

问题描述 投票:0回答:2

我正在 Visual Studio 2022 上使用 MAUI 开发移动应用程序。我有一个主要项目,其中包含 Android 和 ios 的大部分功能。此外,我还创建了第二个针对 net6.0-android 的项目,它实现了一些特定于 android 的功能。主要项目使用。

问题:当我在第二个项目中设置断点时,调试器在主项目中的调用行上中断。我无法参与第二个项目。什么可能导致此问题以及如何解决?

编辑: 重现步骤:

  1. 创建一个新的毛伊岛项目A
  2. 在同一解决方案中创建另一个项目 B 并定位 net6.0-android
  3. 在项目A中参考项目B
  4. 在项目 A 中使用 B 中的某些函数,并在 B 中的该函数内设置断点
  5. 执行将在项目 A 中的调用行处中断,而不是在项目 B 中的实际断点处
android xamarin .net-core maui
2个回答
0
投票

这可能是由于依赖项目将 DeterministicSourcePaths 设置为 true 导致的。

仅在构建/CI 服务器上将确定性源路径设置为 true,切勿在本地构建中设置。

如果设置为 true,则调用堆栈中路径的第一部分将如下所示

/_/MyProject...

尝试在您的第二个(即项目 B)项目上禁用此功能并重建,然后 PDB 中的路径将与您操作系统上的文件相匹配,并且 Visual Studio 将能够找到它们。


-1
投票

按照你的步骤我测试了代码,问题就按照你说的那样发生了。 我查了相关资料。不幸的是,不建议通过向解决方案添加新项目来实现这一点。

您可以使用MAUI提供的

Invoke platform code
。您也可以参考这个示例

© www.soinside.com 2019 - 2024. All rights reserved.