ABP從入門到精通(1):aspnet-zero-core項目啟動及各項目源碼說明


一.ABP的簡單介紹

ABP是“ASP.NET Boilerplate Project (ASP.NET樣板項目)”的簡稱。

ASP.NET Boilerplate是一個用最佳實踐和流行技術開發現代WEB應用程序的新起點,它旨在成為一個通用的WEB應用程序框架和項目模板。

ASP.NET Boilerplate 基於DDD的經典分層架構思想,實現了眾多DDD的概念(但沒有實現所有DDD的概念)。

 

二.ASP.NET ZERO和ABP的關系

ASP.NET ZERO 是 利用ABP框架搭建的模板項目,它會提供預建的頁面及強大的基礎設施架構。利用它提供的基礎框架代碼能讓你快速的開發你的應用層。

准備使用ABP,經過幾天觀看園友的博文的學習打算試一試深淺

IDE:Visual Studio 2017

項目版本:aspnet-zero-core 4.1.1

今天中午已經測試了,aspnet-zero-core 4.1.1可以在centos 7.2下運行

.net core的環境配置請移步 https://www.microsoft.com/net/core#windowsvs2017

下面進入正題!

 

三.啟動ASP.NET ZERO

1.使用VS2017打開項目,等待自動還原程序包結束

 

 

2.生成項目,確保項目全部生成成功

3.生成數據庫

  (1).將項目“MyCompanyName.AbpZeroTemplate.EntityFrameworkCore”設為啟動項目

  (2).打開 工具->Nuget包管理器->程序包管理器控制台,在下拉列表中選中上面的項目

  

  (3).請確保Sql Server數據庫正常開啟,在 程序包管理器控制台 執行命令“Update-Database”(命令執行可能會有點慢,耐心等待)

  

  命令執行完成后,會生成一個名為AbpZeroTemplateDb的數據庫

  

  (3).將項目 “MyCompanyName.AbpZeroTemplate.Web.Mvc” 設為啟動項目,可以直接按F5啟動項目,也可使用命令“dotnet run”啟動項目

  啟動成功如下:

    

  輸入地址 http://localhost:5000/ 即可訪問.

  

  默認用戶名 admin 密碼 123qwe

  

  至此 asp.net zero core項目已經成功啟動

 

四.各項目說明

項目依賴關系圖

1.MyCompanyName.AbpZeroTemplate.Core 項目核心,從上圖就可以看出,在DDD分層中,它應該作為領域層

2.MyCompanyName.AbpZeroTemplate.Application 應用服務層,包含各個應用邏輯

3.MyCompanyName.AbpZeroTemplate.EntityFrameworkCore 基於 EntityFrameworkCore 的封裝,提供了數據庫連接支持,倉儲 基礎設施層

4.MyCompanyName.AbpZeroTemplate.Migrator 數據庫遷移工具(關於數據庫遷移,后面的博文會講),用於執行遷移可以再生產環境中使用

5.MyCompanyName.AbpZeroTemplate.Web.Core 展現層核心,封裝了一些展現層需要用到的工具

6.MyCompanyName.AbpZeroTemplate.Web.Host  ABP的動態webapi+swagger 行

7.MyCompanyName.AbpZeroTemplate.Web.Public asp.net zero 前台頁面 

 8.MyCompanyName.AbpZeroTemplate.Web.MVC 后台頁面

 

 

如若需要部署到IIS,需要安裝Windows Server Hosting (https://www.microsoft.com/net/download/core#/runtime)

安裝成功在iis->模塊 里會看到 

 

發布項目

新建網站,然后設置 應用程序池

 

如果報錯請到事件查看器查看錯誤,或者查看 App_Data/Logs/Logs.txt

這里貼一個我遇到的錯誤:無法連接數據庫,我自己測試的時候發現連接數據庫異常了,使用的身份是iis的用戶身份,肯定無法用Windows身份認證(asp.net zero默認)登錄數據庫,所以直接改為賬號密碼登錄,就成功了。

 

 我也是初次接觸ABP,如果有什么寫的不對的地方,歡迎批評改正!


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM