我这里以SQLite数据库为例,其他数据库类似。
1.下载模板
https://aspnetboilerplate.com/
根据自己的需求选择版本和前端框架并填写项目名称,点击“Create my project!”即可下载一个ABP标准模板项目。
解压下载好的压缩包,找到目录:aspnet-core ,接下来就可以用VS打开.sln 解决方案了。
项目主要是分为下面几个项目分层
Application(应用层):应用层提供一些应用服务(Application Services)方法供展现层调用。一个应用服务方法接收一个DTO(数据传输对象)作为输入参数,使用这个输入参数执行特定的领域层操作,并根据需要可返回另一个DTO。
Core(领域层就是业务层):是一个项目的核心,所有业务规则都应该在领域层实现。这个项目里面,除了定义所需的领域实体类外,其实可以定义我们自己的自定义的仓储对象(类似DAL/IDAL),以及定义自己的业务逻辑层(类似BLL/IBLL),以及基于AutoMapper映射规则等内容。
EntityFrameworkCore(实体框架核心层): 这个项目不需要修改太多内容,只需要在DbContext里面加入对应领域对象的仓储对象即可。
Migrator(数据迁移层):辅助创建的控制台程序项目,如果基于DB First,我们可以利用它来创建我们项目的初始化数据库。
Web.Core(Web或者Web API的核心层) :提供了对身份登陆验证的基础处理,没有其他内容。
Web.Host (动态发布Web API的核心内容):动态发布Web API的核心内容,另外在Web API里面整合了Swagger,使得我们可以方便对Web API的接口进行调试。
Tests(单元测试) :提供了一些应用层对象的模拟测试,其中测试的数据库使用的是Entity Framework 的内存数据库,不影响实际数据库内容。
因为ABP模板默认使用的时SQL Server数据库配置,这里我要替换成SQLite数据库。
把项目 EntityFrameworkCore 里面的 Microsoft.EntityFrameworkCore.SqlServer包删掉,新增 Microsoft.EntityFrameworkCore.Sqlite包
接下来就要修改数据库链接字符串了,下面三个项目中的 appsettings.json 文件中的数据库配置都要改掉。
这里根据自己的数据库文件路径和名称进行修改: "Data Source=D:\\数据库相关文件\\SQLite\\AbpDemo.db"
把 xxxxx.EntityFrameworkCore 这个项目设置为启动项
接下来就要开始生成数据脚本了: 工具 > NuGet包管理器 > 程序包管理器控制台
在打开的程序包管理器控制台,默认项目,选中xxxxx.EntityFrameworkCore
在开始执行脚本之前要先删除 xxxxx.EntityFrameworkCore 项目下的Migrations文件夹,因为这里面默认时SQL Server的脚本,对我来说不适用,如果换其他数据库也是一样要删除。
首先时生成脚本命令:Add-Migration Init
通过控制台可以查看生成结果,并在 xxxxx.EntityFrameworkCore 项目的Migrations文件夹下查看脚本文件。
可以看到脚本文件已经生成。
接下来就是要同步到数据库了,另一个命令:Update-Database
通过控制台查看到同步结果
查询一下数据库,所有的表也都生成了,哦耶!
标签:Web,项目,数据库,默认,ABP,EntityFrameworkCore,API From: https://www.cnblogs.com/Lytton/p/18359536