一.ABP的簡單介紹
ABP是“ASP.NET Boilerplate Project (ASP.NET樣板項目)”的簡稱。
ASP.NET Boilerplate是一個用最佳實踐和流行技術(shù)開發(fā)現(xiàn)代WEB應用程序的新起點沿猜,它旨在成為一個通用的WEB應用程序框架和項目模板夯到。
ASP.NET Boilerplate 基于DDD的經(jīng)典分層架構(gòu)思想浆熔,實現(xiàn)了眾多DDD的概念(但沒有實現(xiàn)所有DDD的概念)。
二.ASP.NET?ZERO和ABP的關(guān)系
ASP.NET?ZERO 是 利用ABP框架搭建的模板項目,它會提供預建的頁面及強大的基礎(chǔ)設(shè)施架構(gòu)革半。利用它提供的基礎(chǔ)框架代碼能讓你快速的開發(fā)你的應用層碑定。
準備使用ABP,經(jīng)過幾天觀看園友的博文的學習打算試一試深淺
IDE:Visual Studio 2017
項目版本:aspnet-zero-core 4.1.1
今天中午已經(jīng)測試了又官,aspnet-zero-core 4.1.1可以在centos 7.2下運行
.net core的環(huán)境配置請移步https://www.microsoft.com/net/core#windowsvs2017
下面進入正題延刘!
三.啟動ASP.NET ZERO
1.使用VS2017打開項目,等待自動還原程序包結(jié)束
2.生成項目六敬,確保項目全部生成成功
3.生成數(shù)據(jù)庫
(1).將項目“MyCompanyName.AbpZeroTemplate.EntityFrameworkCore”設(shè)為啟動項目
(2).打開 工具->Nuget包管理器->程序包管理器控制臺碘赖,在下拉列表中選中上面的項目
(3).請確保Sql Server數(shù)據(jù)庫正常開啟,在?程序包管理器控制臺 執(zhí)行命令“Update-Database”(命令執(zhí)行可能會有點慢外构,耐心等待)
命令執(zhí)行完成后普泡,會生成一個名為AbpZeroTemplateDb的數(shù)據(jù)庫
(3).將項目 “MyCompanyName.AbpZeroTemplate.Web.Mvc” 設(shè)為啟動項目,可以直接按F5啟動項目审编,也可使用命令“dotnet run”啟動項目
啟動成功如下:
輸入地址?http://localhost:5000/ 即可訪問.
默認用戶名 admin 密碼 123qwe
至此 asp.net zero core項目已經(jīng)成功啟動
四.各項目說明
項目依賴關(guān)系圖
1.MyCompanyName.AbpZeroTemplate.Core 項目核心撼班,從上圖就可以看出,在DDD分層中垒酬,它應該作為領(lǐng)域?qū)?/p>
2.MyCompanyName.AbpZeroTemplate.Application 應用服務層砰嘁,包含各個應用邏輯
3.MyCompanyName.AbpZeroTemplate.EntityFrameworkCore 基于?EntityFrameworkCore 的封裝,提供了數(shù)據(jù)庫連接支持勘究,倉儲 基礎(chǔ)設(shè)施層
4.MyCompanyName.AbpZeroTemplate.Migrator 數(shù)據(jù)庫遷移工具(關(guān)于數(shù)據(jù)庫遷移矮湘,后面的博文會講),用于執(zhí)行遷移可以再生產(chǎn)環(huán)境中使用
5.MyCompanyName.AbpZeroTemplate.Web.Core 展現(xiàn)層核心口糕,封裝了一些展現(xiàn)層需要用到的工具
6.MyCompanyName.AbpZeroTemplate.Web.Host ?ABP的動態(tài)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->模塊 里會看到
發(fā)布項目
新建網(wǎng)站,然后設(shè)置 應用程序池
如果報錯請到事件查看器查看錯誤走净,或者查看 App_Data/Logs/Logs.txt
這里貼一個我遇到的錯誤:無法連接數(shù)據(jù)庫券时,我自己測試的時候發(fā)現(xiàn)連接數(shù)據(jù)庫異常了,使用的身份是iis的用戶身份伏伯,肯定無法用Windows身份認證(asp.net zero默認)登錄數(shù)據(jù)庫橘洞,所以直接改為賬號密碼登錄,就成功了说搅。
我也是初次接觸ABP炸枣,如果有什么寫的不對的地方,歡迎批評改正弄唧!