我在azure上运行了一个。net 5服务。现在我试着调试,我可以在这个问题后成功连接。一个问题解决了,下一个:
但是现在它似乎是随机发生的,连接后调试器从服务断开。
所以我这样做:
- 在azure上重启服务,这样做了很多次。还测试了停止服务并再次手动启动。
- 立即按快捷键重新连接到进程,因为我想看ConfigureServices方法。
- 连接成功
- 不显示任何内容,意味着没有在任何断点 结束我可以开慢点吗?不要这样想,"线"。Sleep || Task.Delay"没有帮助赶上任何断点…
- 连接后,它几乎不需要时间,我得到这个在我的输出:输出 几秒钟后,我得到这个
- 在Azure诊断工具应用程序事件日志中,我可以看到以下列表(我尝试了几次)
- 我猜列表中的两个条目是相关的,第一个表示RDB已连接,第二个表示应用程序已关闭
本地调试工作正常!有什么建议在哪里可以找到额外的日志信息,或者这里发生了什么?
我刚刚在VS2019的云资源管理器中发现了一些额外的日志。在eventlog.xml中,我可以看到许多事件显示调试器已经连接
也许有人能帮我走得更远。否则,我会在我的解决方案中设置一个新项目,也许我打破了一些东西,并创建一个新的azure服务来清洁这些组件。谢谢大家!
更新:现在我在azure上创建了一个新服务,在VS2019中设置了一个新项目,没有任何改进。我试着用View检查一个新项目,并试图通过抛出异常来查看代码执行得有多远,它似乎通过整个启动类执行没有问题,只是远程调试似乎不工作,因为远程调试器已经连接。
此问题可能是由于启用了'使用托管兼容模式'导致的。
变通方法:
- <
- 工具→选项/gh>
- 进入调试->General
- 向下滚动到列表底部,取消选中"使用托管兼容模式">
- 重新开始调试
Web中编译元素的debug属性。Config文件必须设置为"true"
<system.web>
<compilation debug="true" targetFramework="*.*" />
<httpRuntime targetFramework="*.*" />
</system.web>
这意味着,你要么做一个"调试"构建,要么手动编辑**Web。配置* *文件。
请确保在远程调试时将您的IP地址添加到防火墙规则中。