1、到Abp官网下载项目
我这里是下载了一个空项目,没有包含用户角色,如有需自行选择。
打开解决方案看看:
运行一下看看项目是否能够正常打开:
2、我这里把.NetCore的版本改为了2.2,默认的是2.1,我不习惯Abp的默认命名空间,这里也一起改了(这一步可省略)。
3、我准备用MySql数据库,Abp默认使用的是SqlServer。这一步是移除默认Sql Server相关包
在EntityFrameworkCore项目下移除包Microsoft.EntityFrameworkCore.SqlServer、Microsoft.EntityFrameworkCore.Design
4、添加MySql程序包
添加Pomelo.EntityFrameworkCore.MySql
添加Pomelo.EntityFrameworkCore.MySql.Design
5、修改EntityFrameworkCore下的Configurer
6、修改Web下的appsettings中的数据库连接:
7、删除EntityFrameworkCore下的Migrations
原有内容是Sql Server的迁移文件,这里用不上,所以删除吧
8、新建一个实体类
TestInitial实体从 ABP 的 Entity 基类继承,Entity 基类默认ID属性是 int 类型。如果主键类型为非 int 类型,也可以选择范型版本的 Entity<TPrimaryKey>.
IHasCreationTime 是一个简单的接口,只定义了 CreationTime 属性 (统一规范 CreationTime 的名字)
9、将TestInitial添加到数据库上下文 DbContext
10、数据库迁移
这里注意选择默认项目
执行命令Add-Migration生成的文件
执行Update-Database命令:
生成数据库:
11、编写TestInitial服务
创建接口ITestInitialService、服务TestInitialService及Dto
实现新增与查询方法:
TestInitialListDto:
TestInitialListDto用开返回任务数据。该Dto 从 EntityDto 继承,EntityDto 只是定义了 Id 属性(我们可以不继承 EntityDto ,直接自己将 Id 加到我们的Dto里)。我们定义了[AutoMapFrom] 特性来创建 AutoMapper 自动映射任务实体到任务列表Dto TestInitialListDto。这个特性在 Abp.AutoMapper nuget 包里进行了定义。
ListResultDto 是一个简单的类,包含了一个列表(我们可以直接返回一个 List<TestInitialListDto> 列表)
到此结束了
;