我正在尝试使用远程调试器调试代码。该应用程序位于.Net Core中,并在Linux中运行。连接工作正常,断点被击中。
唯一的问题是我无法读取变量值(在命中BP时),并且如果将变量添加到“监视列表”或使用“立即窗口”检查值,则会收到错误消息,因为变量“确实在当前上下文中不存在”。
在https://github.com/dotnet/core/issues上找不到参考,我将解决一个问题。
当然,如果我在计算机上而不是在远程服务器上运行项目,则所有变量的读取都不会出现任何问题。当然,远程DLL是在Debug模式下编译的。
在这种特定情况下,DLL随反射一起加载。由于断点问题,我将<DebugType>embedded</DebugType>
和<DebugSymbols>true</DebugSymbols>
(在.csproject文件中)设置为将所有符号都包含到.dll中。
关于Git的未解决问题:https://github.com/dotnet/core/issues/1928