我应该在哪个进程上附加Visual Studio Debugger来调试Kestrel应用程序?

nik*_*3ro 6 visual-studio kestrel-http-server asp.net-core

我打开命令行并使用dotnet run命令运行我的应用程序。这将启动Kestrel并启动我的应用程序。

我应该如何确定将调试器附加到哪个进程,以便可以调试Kestrel现在托管的网站?

我特别需要能够以这种方式进行操作-意味着我不能使用标准F5。

SO *_*ood 5

不幸的是,现在无法使用Visual Studio或.NET Core提供的工具来分辨。但是请注意,社区已经在此请求了此功能,因此您可以在此处发表意见。

当前,最好的选择是按照给定应用程序的端口,按照以下步骤找出进程的ID

  1. netstat -abon | findStr "127.0.0.1:{PORTNUMBER}"
  2. 找到上面返回的进程的ID,为了更快地查找,名称将为 dotnet.exe

如果您喜欢冒险,则可能需要使用类似PowerShell的东西,它将直接返回端口号:

 $string = netstat -abon | findStr "127.0.0.1:{PORTNUMBER}"; $results = $string.split(' '); $results[$results.length - 1]
Run Code Online (Sandbox Code Playgroud)