提问人:trubby22 提问时间:8/23/2023 最后编辑:trubby22 更新时间:8/24/2023 访问量:74
如何从具有不同 .NET 版本的 .NET 解决方案调试引用的 NuGet 包?
How to debug a referenced NuGet package from a .NET solution with different .NET versions?
问:
我有一个针对 .NET framework net7.0 的 .NET 解决方案 X。在 X 中,我引用(导入)一个自行创建的 NuGet 包,该包使用来自另一个解决方案 Y 的 dll,该解决方案面向多个 .NET 框架:net472 和 netstandard2.0。
我的主要问题是,当我调试 X 时,我无法在来自 Y 的程序集上设置断点。
当我在 X 的 Visual Studio 中打开进程窗口(调试 -> Windows ->进程)时,我看到以下版本的 .NET 的调试器:托管(.NET Core、.NET 5+)。当我在调试 Y 时打开同一窗口时,调试器配置为调试托管 (.NET 4.x)。本 Microsoft 指南解释说,这可能是我问题的根本原因。但是,我不知道如何添加/更改 X 中使用的调试器版本,并且还担心如果我将其更改为匹配 Y 的版本,我将无法再在 X 中调试代码。
到目前为止,我尝试过的事情都没有用:
- 手动将相关 .pdb 文件复制到 X 的调试文件夹
- 在设置中添加了符号文件位置 - 它包含用于创建 NuGet 包的 dll 和 pdb 文件
- 在设置中关闭了“仅我的代码”选项
- 正如这里建议的那样,在没有调试的情况下启动了 X,并从另一个 VS 实例附加到它 - 作为我的调试器,我选择了:托管(.NET Core、.NET 5+)和后来的托管 (.NET 4.x),但两种设置都不起作用
答: 暂无答案
评论