无法控制启动程序源码时如何调试.NET5项目代码?
.NET5 插件场景调试断点不生效解决方案
- 确保插件项目编译配置正确:编译时取消勾选「优化代码」选项,同时生成完整的PDB符号文件,保证部署到宿主运行环境的DLL与PDB是同一次编译生成的版本,禁止混用不同批次编译的DLL与PDB。
- 附加进程时手动指定代码类型:在Visual Studio的「附加到进程」窗口,点击「附加到」右侧的「选择」按钮,手动勾选「托管(.NET Core, .NET 5+)」代码类型,不要使用默认的「自动检测」选项,避免识别错误。
- 附加进程后手动加载符号:成功附加到
dotnet.exe进程后,依次打开顶部菜单栏「调试」->「窗口」->「模块」,在模块列表中找到你开发的插件DLL,右键选择「加载符号」,定位到本地编译生成的对应PDB文件即可完成符号加载。 - 关闭「仅我的代码」限制:打开「工具」->「选项」->「调试」->「常规」,取消勾选「启用仅我的代码」,避免Visual Studio将不属于宿主启动项目的插件代码判定为非用户代码,跳过符号加载与断点匹配。
- 验证DLL加载路径:在上述「模块」窗口中查看你的插件DLL的实际加载路径,确认与你预期部署的DLL路径一致,避免宿主程序加载了其他位置的旧版本DLL导致符号不匹配。
内容的提问来源于stack exchange,提问作者Escoce
相关产品推荐
相关产品推荐

