我有两个Asp.Net核心项目-一个是版本2.2。其中一个是3.0版。
每个项目都是在Visual中创建的全新的空MVC项目。
我通过放到命令行并执行dotnet run来运行每个项目。
然后按照以下方式调试代码:
dotnet进程的进程IdDebug -> Attach to Process对于版本2.2的项目,我可以很容易地在任务管理器中识别正确的dotnet过程--它显示指向我项目的.dll文件的dotnet exec命令:

但是,对于3.0项目,任务管理器中的dotnet流程如下所示:

没有一个进程明确地与我的项目的.dll文件相关联,而且它们都不允许我使用附加到进程来调试我的代码。
所以我的问题是--当我使用Asp.Net运行Visual的调试器时,是否有一种将它附加到dotnet run核心项目的方法?
发布于 2019-11-20 14:39:36
结果表明,当使用Asp.Net运行dotnet run时,任务管理器中有一个与2.2不同的条目--生成的.exe文件显示在任务管理器的详细信息中,我可以在Visual中成功地附加到这个过程:

发布于 2019-11-23 14:43:19
在将ASP.NET Core2.2项目升级到ASP.NET Core3.0之后,我也遇到了同样的问题。我用了一个技巧来找出我应该在任何需要的时候附加的过程:
在我的例子中,这个过程被称为{AssemblyName}.exe。
边注:,您可以发现重接扩展对于快速重新附加(例如Ctrl-RCtrl-1)到以前的进程特别有用。
https://stackoverflow.com/questions/58952474
复制相似问题