Http Error 502.5 - Process Failure

如果你看到上面這張圖片了的話,說明你在本地運行的時候報錯了。
尤其好多都是我的群友,說下情況。
這個一般是本地的.NET Core SDK版本不統一報錯造成的。
原因
這個鍋是微軟的,我在Github上有一個ASP.NET CORE + EF COER的學校案例。
開源地址:https://github.com/52ABP/52ABP.School
這個也錄制成為了視頻。
當時的項目版本為.NET CORE 2.0,所以現在有很多群友下載然后運行就報錯了。
現在是因為下載的SDK是2.1 。所以版本對應不上就GG 了。
理論上來說.NET CORE 2.1X是需要進行向下兼容的。但是不知道為什么這把就沒有做好。
原因:項目的SDK版本和運營環境的SDK版本對應不上。
解決方案有兩種,一種是升級項目的.NET CORE版本,還有一種就是安裝對應的.NET CORE版本。
解決思路
首先你要去找你的IIS報錯日志,得到的錯誤代碼 ErrorCode = '0x80004005 : 8000808c.是這個的話,那就可以通過我說的辦法來解決了。
第一種
通過直接修改web.config 的文件。

<aspNetCore processPath="dotnet" arguments=".\LTM.School.dll" stdoutLogEnabled="false" stdoutLogFile=".\logs\stdout" />
將 processPath="dotnet"改成你安裝的.NET CORE SDK路徑,一般默認在"C:\Program Files\dotnet\dotnet.exe"路徑下,替換下就可以解決了。
這種一般是常規加臨時解決方案,不穩定。
第二種
下載對應版本的SDK地址:https://www.microsoft.com/net/download/archives

找到對應的大版本,然后里面有具體的版本信息。
但是有個問題,你如果已經裝了高版本的SDK,是無法安裝低版本的SDK的,所以也不推薦這個辦法。
第三種【推薦辦法】
升級你項目的SDK.比如https://github.com/52ABP/52ABP.School 的.NET Core版本就是2.0,直接升級到2.1后,發布環境,所有的問題迎刃而解。
.NET Core 還很年輕,大家多給他點時間。相信他會改變不一樣的開發環境。
畢竟 Java都開始收費了,大家的機會就來了嘛。
最后
52ABP學校的Demo,已經發布出來了。大家可以體驗,.NET CORE 2.1.3的版本。
站點:http://school.yoyocms.com/
就這樣,后面得空會放出.NET CORE 2.0 升級到2.1的方法。也很簡單。
關注微信公眾號:角落的白板報

