【发布时间】:2019-04-12 05:45:39
【问题描述】:
我有带有 EFCore 的 .Net Core 应用程序。我创建了继承自 IdentityDbContext 的 ApplicationDbContext 类。
我想使用 AspNetUsers DbSet 进行授权和身份验证。然后在 powershell 控制台中,我输入了“更新数据库”,在我的 PostgreSQL 数据库中,我看到了一些表,包括 AspNetRoles、AspNetUsers 等,但在项目中我只有空的 ApplicationDbContext。
那我该怎么办?我可以将 DB 中的所有实体构建为对象模型或扩展 IdentityDbContext 并以某种方式将属性添加到 aspNetUsers。此外,如果我搭建实体,我将获得另一个新的 DbContext,其中包含所有 AspNetUsers 和其他人。
【问题讨论】:
-
Entity Framework 使用
DbContext,所有IdentityDbContext都是继承DbContext的实现,以处理内置的Microsoft 授权和身份验证机制。那么你应该使用哪个DbContext是什么意思? -
根据您的要求和表的数量,您可以考虑创建多个 DbContext(s)。拥有God Context 会导致许多编程问题。
标签: c# entity-framework asp.net-core .net-core