在 ApiAuthorizationDbContext<TUser> Class 中声明其他实体时出现问题
Problems declaring other entities in the ApiAuthorizationDbContext<TUser> Class
我使用 .NET Core React + 个人用户身份验证模板创建了一个项目。
我正在尝试在 ApiAuthorizationDbContext<TUser>
class 中声明其他实体,但它们似乎没有出现在数据库中。
public class ApplicationDbContext : ApiAuthorizationDbContext<ApplicationUser>
{
public ApplicationDbContext(
DbContextOptions options,
IOptions<OperationalStoreOptions> operationalStoreOptions) : base(options, operationalStoreOptions)
{
}
public Microsoft.EntityFrameworkCore.DbSet<Student> Students { get; set; }
}
我也必须像这样给它们加上前缀public Microsoft.EntityFrameworkCore.DbSet<Student> Students { get; set; }
,否则我会得到这个错误'DbSet<>' is an ambiguous reference between 'System.Data.Entity.DbSet<TEntity>' and 'Microsoft.EntityFrameworkCore.DbSet<TEntity>'
。
查看 this 文档。简而言之,您应该 运行 像这样迁移 -
安装 .net cli 工具
打开 cmd 并“cd”到您的 .csproj
创建迁移 -
dotnet ef 迁移添加 InitialCreate
使用此命令更新数据库 -
dotnet ef 数据库更新
我使用 .NET Core React + 个人用户身份验证模板创建了一个项目。
我正在尝试在 ApiAuthorizationDbContext<TUser>
class 中声明其他实体,但它们似乎没有出现在数据库中。
public class ApplicationDbContext : ApiAuthorizationDbContext<ApplicationUser>
{
public ApplicationDbContext(
DbContextOptions options,
IOptions<OperationalStoreOptions> operationalStoreOptions) : base(options, operationalStoreOptions)
{
}
public Microsoft.EntityFrameworkCore.DbSet<Student> Students { get; set; }
}
我也必须像这样给它们加上前缀public Microsoft.EntityFrameworkCore.DbSet<Student> Students { get; set; }
,否则我会得到这个错误'DbSet<>' is an ambiguous reference between 'System.Data.Entity.DbSet<TEntity>' and 'Microsoft.EntityFrameworkCore.DbSet<TEntity>'
。
查看 this 文档。简而言之,您应该 运行 像这样迁移 -
安装 .net cli 工具
打开 cmd 并“cd”到您的 .csproj
创建迁移 -
dotnet ef 迁移添加 InitialCreate
使用此命令更新数据库 -
dotnet ef 数据库更新