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_Authors
andUpdate-Database
命令。在这种情况下,请确保Acme.BookStore.EntityFrameworkCore
是 Visual Studio 中的启动项目,并且是Acme.BookStore.EntityFrameworkCore
PMC 中的默认项目。
实现IAuthorRepository
在 Acme.BookStore.EntityFrameworkCore
项目内( Authors
在文件夹中)创建 EfCoreAuthorRepository.cs
1 | using System; |
EfCoreAuthorRepository
继承自EfCoreRepository
WhereIf
是ABP框架的扩展方法。当第一个条件满足时,才会添加Where
条件sorting
可以是类似Name
、Name ASC
或Name DESC
的字符串。可以使用 System.Linq.Dynamic.Core NuGet 包。
下一节
教程下一节
Related Posts