ABP的學習網站我目前是使用兩個,兩個網站的文檔內容有些是互補的,可以幫助我們更詳細的學習
2. https://aspnetboilerplate.com/
不過從項目下載到運行這一段我更推薦第二個,因為我按照第一個網站下載項目失敗了,而且第一個推薦我們使用.NET Core 3.0+VS2019,這里還遇到一個小小的坑,下面我會提到。
在開始之前我們先要做一下准備工作:
- .NET Core 3.0+ (.NET Core 3.0 SDK)
- Node v12+
- Yarn v1.19+ (包管理器,后續會用到)
- Visual Studio 2019 (v16.3+) 注意要下載16.3以上的,因為16.3以上才支持.net core 3.0版本
上述工具具體安裝我就不描述了,根據文檔來應該不是很困難,然后從 https://aspnetboilerplate.com/Templates 把ABP樣板框架下載下來。
可以看到可選的有兩種,一種是基於.NET Core的,一種是基於MVC5的,但是大趨所向,還是選擇.NET Core的吧
其實這兩着還有一個區別就是基於.NET Core的是單頁面模式,MVC5的是多頁面模式 (附一張單頁面和多頁面的對比圖)
另外.NET Core下又可以選擇Angular or Vue or React,這三個應該是目前最流行的三個前端框架了吧。
這里下載的項目是前后端分離的,我們只需要選擇相對來說更熟悉的前端框架來下載就好了,畢竟我們關注的重點應該是在后台服務。這里我就以 Vue為例
選擇后填入相關信息,點擊Create my Project就會以壓縮包的形式下載下來
待項目下載完畢后我們解壓此項目
然后用VS2019打開 項目名稱\5.0.0\aspnet-core 下的解決方案,可以看到項目結構如下
然后右鍵 還原NuGet包
看到下圖則代表成功。
然后我們需要更改 項目名稱.Migrator 和 項目名稱.Web.Host下的appsettings.json文件中的數據庫連接
建議改成如下格式,注意Trusted_Connection建議改成false,為true的話登錄數據庫會以windows身份去驗證,有時候會登陸失敗,改成false則會以配置中的用戶名和密碼去驗證。
"Default": "Server=192.168.1.1; Database=ABP_Project;user id=sa;password=123; Trusted_Connection=false;"
然后需要數據還原,才用code first的形式還創建數據庫表,打開 工具->Nuget包管理器->程序包管理器控制台 (如下圖)
然后把項目名稱.EntityFrameworkCore選擇為默認項目,輸入 Update-Database 回車待數據庫創建完畢
然后把 項目名稱.Web.Host設為啟動項目運行起來,運行后如下圖
可以看到是搭配Swagger的API,但是有些可能運行起來會看到這樣,提示我們找不到 bin目錄下rosyln文件夾中的csc.exe,即使重新生成也沒有
這個時候需要檢查是否安裝了 Microsoft.CodeDom.Providers.DotNetCompilerPlatform和Microsoft.Net.Compilers 這兩個包,如果未安裝需要安裝后重新生成一下,如果已安裝卸載重裝再重新生成一下,是在不行只好從別的地方拷貝一個了。
然后我們再運行Vue的客戶端,cmd到 項目名稱\Vue下 然后 yarn install 來安裝依賴的npm包
安裝完畢后通過 yarn serve --open來啟動項目
啟動完畢后就可以看到如下界面
然后使用 admin + 123qwe 登錄系統 看到如下界面就代表成功了
然后接下來的任務就是根據實際開發需求來完善這個項目了