一、落地条件:
1. .NET5+版本
2. DDD
3. ABP vNext
4.ABP CLI (ABP的命令行工具,包括ABP的各种模板)
5.SQL Server
写在前面:我觉得这个框架的文件分层很凌乱,在企业的实际业务场景中,一般都会梳理一套更简洁的框架规范
二、安装ABP CLI
1.打开命令行控制器(win+R,cmd),输入
dotnet tool install -g Volo.Abp.Cli
安装ABP CLI
2.使用CLI创建语句,创建ABP vNext框架项目:
abp new MyEBusiness --dbms sqlserver -u none -o F:\MyProjects\EBusiness.Webapi
项目创建成功
三、借助模板类库DbMigrator 项目创建数据表,以及将种子数据初始化到数据库
1.我们在Domian中创建一个Products文件夹,并添加一个实体类Product
并在EntityFrameworkCore项目的数据库上下文类DbContext.cs中添加DbSet属性:
2.将DbMigrator项目设置为启动项并启动,输出窗口如下
数据表Product即创建成功,且模板默认创建了许多Abp开头的数据表,用于记录Abp vNext项目的一些信息
3.在Domain项目的Products文件夹中创建种子数据类ProductDataSeederContributor.cs存放种子数据(测试数据),然后再次启动DbMigrator项目
测试数据就会被插入表内:
四、实现通过接口操作数据(增删改查等)
1.在领域层Domain项目的Products文件夹创建仓储接口IProductRepository,定义接口
2.在仓储层Products文件夹中创建仓储文件类 (我们先通过原始方式访问数据)
3.在应用层Application、Application.Contracts项目分别创建如下文件
实现数据访问接口(细节就不再贴图,能看到这里的应该都懂)
4.在接口层HttpApi的控制器文件夹创建ProductsController调用IProductService提供的接口
5.在Web应用UI层HttpApi.Host项目中注册HttpApi层的Module文件。
注:在.NET6.0以及更高版本的ASP .NET core版本中,StartUp.cs文件被移除,那么如何添加中间件、服务等东西呢?
即直接在Program.cs文件的Main函数中添加,如下
直接启动HttpApi.Host web应用项目
找到我们的Products路由,执行获取数据列表接口
,得到我们想要的数据 。
今天的学习就到这里,下篇文章继续深化APB vNext框架项目