DbContext
本页只面向仍在维护 EF Core 存量实现的项目。EF Core 已被列为遗留兼容方案,不推荐新项目继续接入;迁移方向请优先阅读 EF Core 迁移到 Dapper。
适用前提
- 项目已经存在
AgileLabDbContext、CrudRepository或 EF Core migration。 - 当前阶段只能维护,不适合立即整体迁移。
- 团队已经明确后续会逐步迁往 Dapper。
最小示例
using AgileLabs.EfCore.PostgreSQL;
using Microsoft.EntityFrameworkCore;
using Microsoft.Extensions.Logging;
/*
列出迁移列表
dotnet ef migrations list
增加一次迁移
dotnet ef migrations add Init
列出脚本
dotnet ef migrations script
删除最近一次迁移
dotnet ef migrations remove
直接更新db
dotnet ef database update
*/
namespace Niusys.Casher.DataStore
{
public class CenterDbContext : AgileLabDbContext
{
public CenterDbContext(ILoggerFactory loggerFactory) : base(loggerFactory)
{
}
protected override void OnModelCreating(ModelBuilder builder)
{
builder.ApplyConfigurationsFromAssembly(GetType().Assembly);
}
}
}
维护约束
- 不在新模块继续新增
DbContext接入面。 - 不把新的查询、报表和分页继续堆到 EF Core 上。
- 保留 EF Core 时,也要明确后续对应的 Dapper 迁移路径。