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默認)登錄數據庫,所以直接改為賬號密碼登錄,就成功了。
原文地址:http://www.cnblogs.com/stulzq/p/7237153.html
.NET社區新聞,深度好文,微信中搜索dotNET跨平臺或掃描二維碼關注
總結
以上是生活随笔為你收集整理的ABP从入门到精通(1):aspnet-zero-core项目启动及各项目源码说明的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Jexus~docker与它产生了暖味
- 下一篇: [译]ASP.NET Core 2.0