.Net 6
紙殼CMS v3.5最主要的更新就是升級到了最新的.Net 6運行環境,擁有更好的性能,啟動更快。在Linux平台部署時可不用安裝libgdiplus,部署更方便。並且docker鏡像比之前的版本縮小50%。
更新日志:
- 升級運行環境到 .Net 6 #444
- 替換驗證碼生成方案,Linux上無需安裝其它依賴 #445
- footer / header 標簽無法綁定數據 bug #446
- 將更新索引任務移到后台任務執行,避免更新時間過長卡死頁面
出於安全考慮,企業版的在線編輯模板功能不再支持Razor,默認只支持Liquid模板。
升級指引
如果有添加自己的插件,注意需要修改插件的項目文件。
第一,將TargetFramework設置為net6.0,並且添加EnableDynamicLoading設置,將值設置為true,如下圖所示

第二,將ZKEACMS.csproj的項目引用添加<Private>false</Private>和<ExcludeAssets>runtime</ExcludeAssets>,如下圖所示:

更新發布程序
新的發布程序適配了.Net6,並且更新了發布插件的邏輯,可以縮短發布時間。可以使用以下命令更新發布程序到最新版本:
dotnet tool update ZKEACMS.Publisher -g
覆蓋部署注意事項
首先,請手動升級運行環境:
- Windows:https://www.zkea.net/windows-hosting-bundle-installer
- Linux:https://www.zkea.net/dotnet-runtime-linux
下載后使用tar zxf dotnet.tar.gz -C ~/dotnet解壓到原dotnet安裝目錄即可。
升級.Net 6之后,Razor視圖的預編譯不再分開為單獨的dll,所以在部署的時候需手動刪除項目下的所有的*.Views.dll文件以免發生一些未知錯誤。
另外我們建議刪除根目錄下的所有dll文件和依賴項,3.5版本的依賴項有所變更,這樣可清除一些不必要的DLL文件,例如:System.Drawing.Common.dll。
由於System.Drawing.Common不再跨平台支持,因此我們移除了對它的依賴,換成了SixLabors.ImageSharp。
