序言
因为疫情的原因,自己的公司接不到项目,打算出去找一份稳定一点的工作,投简历的时候看到好多公司都要求.NetCore项目经验,本人已经工作好多年,主要从事.net B/S架构项目的开发,水平一般,自我感觉自学能力还行,之前因为项目忙没有时间,现在有时间了,因此打算学一下,开帖记录一下学习中遇到的问题。
环境搭建
- 操作系统 Windows Server 2016
- 数据库 SqlServer2012
- 开发软件VS Professional 2015
- .NetCore版本3.1 dotnet-sdk-3.1.201-win-x64.exe 此 处 请 下 载 1.0 版 本 , V S 2015 最 新 版 本 只 能 支 持 到 1.1 版 本 \color{#FF0000}{此处请下载1.0版本,VS2015最新版本只能支持到1.1版本} 此处请下载1.0版本,VS2015最新版本只能支持到1.1版本
- VS插件工具版本DotNetCore.1.0.0-VS2015Tools.Preview2.exe
安装遇到的问题
前4项安装没有遇到问题,VS插件工具安装遇到问题,错误提示如下图
网上搜了一下,好多人都遇到了类似的问题,都是说在cmd里面执行DotNetCore.1.0.0-VS2015Tools.Preview2.exe SKIP_VSU_CHECK=1
就可以了,我傻傻的执行了一下,发现下面的问题。
想了一下也觉得自己傻,应该切换到软件所在的路径啊,如下图,切换到安装文件所在的路径就可以了,当然也可以在对应的路径点着shift然后鼠标右键在弹出的窗口选择在此处打开命令窗口。
折腾了一下午,进行不下去了,重新编辑一下,把遇到的问题写完吧,打算换vs2019了。
安装完,创建api项目,过程这里就不列举了,有兴趣的可以自行百度。项目创建好后,直接F5运行项目可以正常显示。但是发布后放到IIS上面就会遇到下面的HTTP Error 502.5-Process Failure的错误。另外就是直接在发布的文件里面在cmd里面输入dotnet -APIProject.dll(APIProject为项目名称)是可以的。
事件探查器里面的错误信息如下网上搜了一下,说是本地的.NET Core SDK版本不统一报错造成的,没有搞特别明白。并提供了两种方案,我采用了简单的方法,将web.config里面的 processPath="dotnet"改成你安装的.NET CORE SDK路径,在"C:\Program Files\dotnet\dotnet.exe"路径下,替换下就可以解决了。不过我还是有同样的问题,错误如下
最后的解决方法是修改应用程序池,如下图,将标识修改为LoacalSystem就可以了,经测试只修改这个标识是不可以的,上面的web.config里面的processPath还是需要修改的,否则还是有错误。原理不太清楚,希望有懂的大神帮忙解释一下。
最后一个问题就是web.config里面的路径每次发布后都的重新修改,每次都会替换成processPath=“dotnet”,因为打算换VS2019了,所以也没有解决。
又是白忙活的一天,继续努力,我去装新的环境了,后续更新.NetCore2.1和3.1版本VS2019遇到的问题。