首页 > 解决方案 > Linux下调试.NET Core

问题描述

目前我正在尝试在 Linux 下调试 Linux .NET Core 应用程序。

问题是,它在一开始就在某个地方失败了,我无法到达哪里。在当前情况下无法进行日志记录。

据我在 Internet 上看到的,并且(严格避免任何类型的系统化和后果性)在 MSDN 上, Linux目前唯一可用的选项是:

  1. 远程调试(在我的情况下不会做得很好);
  2. Jetbrains 的Rider EAP(专有决定);
  3. 使用 lldb

所以,我的问题是:

  1. 有什么方法可以启动 .NET Core 独立应用程序(通过“dotnet Some.dll”命令),使其在入口点立即中断(即好像有断点)?
  2. 如果没有,如何为附加的 .NET Core 控制台应用程序启动 lldb(因为 Internet 上的许多示例问题都显示附加到已经运行的 .NET Core 进程)?
  3. 再一次,有 dotnet-dump 实用程序,它也适用于已经运行的进程 - 因此,对于几乎立即崩溃的进程,即使是转储也是一个不可用的选项。我预计可能有办法让它像(想象的)“dotnet-dump collect SomeInvocation.dll”以及(实际存在的)“dotnet-dump collect --process-id 1234”一样转储。有没有这样的方法?

标签: linuxdebugging.net-corelldb

解决方案


推荐阅读