目录

  • 前言
  • 开始
    • AbpHelper
    • 模块安装
  • 最后


前言

上一篇介绍了ABP的一些基础知识,本篇继续介绍ABP的启动模板。使用ABP CLI命令就可以得到这个启动模板,其中包含了一些基础功能模块,你可以基于这个模板来快速开发。

开始

首先ABP CLI的安装以及基本指令这些就不说了,官网上写的很清楚。目前ABP的前端部分只支持ASP.NET Core MVC / Razor Pages和Angular,移动端支持React Native。

初学者建议跟着官网https://docs.abp.io/zh-Hans/abp/latest/Tutorials/Part-1?UI=MVC这个指引做一遍,体验一下ABP开发的基本流程,虽然ABP开发流程几乎都标准化了,照着官网的流程编写代码就能完成一个功能的开发,但是这个过程有些繁琐,容易出错。这里推荐一个开源项目:https://github.com/EasyAbp/AbpHelper.GUI,这是一个ABP帮助工具,你只需要创建一个实体,剩下的代码它都可以帮你生成。这个项目是https://github.com/EasyAbp下的一个子项目,EasyAbp是国内ABP爱好者创建的,里面还有很多开箱即用的模块,可以关注一下。。。

AbpHelper

使用AbpHelper来完成官网的例子非常容易,首先创建项目解决方案:

初识ABP vNext(2):ABP启动模板_ABP

初识ABP vNext(2):ABP启动模板_ABP_02

AbpHelper提供了图形化配置,自动帮我们执行ABP CLI指令:

初识ABP vNext(2):ABP启动模板_ABP vNext_03

执行完成后,打开解决方案,先启动Acme.BookStore.DbMigrator项目来初始化数据库:

初识ABP vNext(2):ABP启动模板_ABP_04

初识ABP vNext(2):ABP启动模板_ABP vNext_05

初识ABP vNext(2):ABP启动模板_ABP_06

然后就可以启动Acme.BookStore.Web项目,这是APB启动模板的默认界面:

初识ABP vNext(2):ABP启动模板_ABP_07

接下来,在Acme.BookStore.Domain项目中创建Book实体,我直接从官网上复制代码。

public class Book : AuditedAggregateRoot<Guid>{ public string Name { get; set; } public BookType Type { get; set; } public DateTime PublishDate { get; set; } public float Price { get; set; } protected Book() { } public Book(Guid id, string name, BookType type, DateTime publishDate, float price)  : base(id) {  Name = name;  Type = type;  PublishDate = publishDate;  Price = price; }}

在Acme.BookStore.Domain.Shared项目中添加枚举类BookType:

public enum BookType{ Undefined, Adventure, Biography, Dystopia, Fantastic, Horror, Science, ScienceFiction, Poetry}

第一次使用需要安装一下AbpHelper CLI: