Abp vNext - 应用开发系列之数据访问
在系列教程中,我们会构建一个基于ABP的Web应用程序,用于管理书籍及其作者列表
使用到的技术:
- Entity Framework Core
- Angular
本教程分为以下部分:
- Part1:创建服务端
- Part 2:图书列表页面
- Part 3:创建,更新和删除图书
- Part 4: 集成测试
- Part 5:授权
- Part 6:作者: 领域层
- Part 7:作者: 数据访问 (本节)
- Part 8:作者: 应用服务层
- Part 9:作者: 用户界面
- Part 10:图书关联作者
DB Context
在 Acme.BookStore.EntityFrameworkCore 项目中打开“ BookStoreDbContext 并添加以下 DbSet 属性:
1 | public DbSet<Author> Authors { get; set; } |
并在OnModelCreating中添加以下配置:
1 | builder.Entity<Author>(b => |
Migration
新增实体后需要创建新的迁移以同步更新到数据库中。
将.EntityFramework.Core设为启动项目,打开命令行,输入以下命令新增迁移:
1 | dotnet ef migrations add Added_Authors |

更新到数据库:
1 | dotnet ef database update |
如果使用的是 Visual Studio,则需要在包管理器控制台 (PMC) 中使用
Add-Migration Added_AuthorsandUpdate-Database命令。在这种情况下,请确保Acme.BookStore.EntityFrameworkCore是 Visual Studio 中的启动项目,并且是Acme.BookStore.EntityFrameworkCorePMC 中的默认项目。
实现IAuthorRepository
在 Acme.BookStore.EntityFrameworkCore 项目内( Authors 在文件夹中)创建 EfCoreAuthorRepository.cs
1 | using System; |
EfCoreAuthorRepository继承自EfCoreRepositoryWhereIf是ABP框架的扩展方法。当第一个条件满足时,才会添加Where条件sorting可以是类似Name、Name ASC或Name DESC的字符串。可以使用 System.Linq.Dynamic.Core NuGet 包。
下一节
教程下一节
Related Posts