NETCore 调试
https://www.cnblogs.com/MingQiu/p/8227644.html
https://www.cnblogs.com/shumin/p/9967854.html
前言
core也用了很长一段时间了,发现很多小伙伴不知道如何调试core的代码。
可想而知,以前使用mvc的时候,不需要发布代码,直接iis地址指向项目源码,然后附加到进程w3wp.exe就可以调试了。
在core的项目里面已经不能这样玩了...
正文
1. 安装Open Command Line
2. 配置
我们先建一个core网站,在解决方案上面右键,最下面会出现Open Command Lint选项
先进Default,会打开dos面板,路径是当前项目路径
输入:dotnet run 启动项目
在浏览器中打开https://localhost:5001就可以浏览到项目。
然后在VS中附加到进程,选择dotnet.exe进程(选择查看所有用户进程)
这样断点就进来了。
如果修改了代码,需要在使用ctrl+c终止,然后dotnet run重新发布,就可以了。
这样一来相当于以前把 IIS 直接定位在网站项目路径下的做法了, 足够方便。
后来发现还有更方便的,连 dotnet run都不需要敲了。
选择Settings,将 Command arguments 这一栏改为: /k dotnet run
设置好了, 下一次点击 “Open Comand Line”->“Default”, 直接就执行 dotnet run 了。
PS:大佬指点,命令可以改成 dotnet watch run,这样代码改动就不需要重新执行命令了,
后续整理
因为本篇文章有很多同学有质疑,在这里进行后续的整理
1.多个项目同时开发的时候,出现多个dotnet.exe进程,无法判断当前项目属于哪个进程
2.会莫名其妙出现很多个dotnet.exe进程
解决方案:
在项目目录下新建文件 run.cmd
复制代码:
@echo off
echo ASPNETCORE_ENVIRONMENT=Development
dotnet build
start "xxx" dotnet run
exit
然后在cmd上面右键,Execut File打开
重新附加到解决方案就能显示该项目的进程名称
3.如需要提升编译速度,可直接使用路径替换dotnet run,速度将会大大提升
dotnet bin\Debug\netcoreapp2.1\VueCore.Admin.dll 替换 dotnet run