You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

ASP.NET Core中ApiAuthorizationDbContext无法为自定义模型创建表如何解决

你没有生效的原因是DbSet的定义不符合EF Core的要求,不需要单独创建新的DbContext,直接修改现有配置即可,调整步骤如下:

  • 第一步:修正DbSet的定义,EF Core只会识别上下文内的公共属性作为实体集,你现在写的是没有访问器的字段,EF Core不会扫描。将对应代码修改为:
// 注意加 {get;set;} 变成属性,推荐使用帕斯卡命名法首字母大写
public DbSet<Student> Students { get; set; }
  • 第二步:添加实体迁移。修改完上下文代码后需要显式生成迁移脚本,执行以下命令即可:
    如果你使用Visual Studio包管理器控制台:
    Add-Migration AddStudentTable
    如果你使用dotnet CLI命令行:
    dotnet ef migrations add AddStudentTable
  • 第三步:将迁移应用到数据库,执行以下命令:
    包管理器控制台:
    Update-Database
    dotnet CLI:
    dotnet ef database update

你现有代码里OnModelCreating的配置是正确的,执行完上述步骤后就会自动生成名为Student的表,不需要额外拆分DbContext,ApiAuthorizationDbContext本身就支持扩展自定义业务实体,完全可以同时承载Identity相关表和自定义业务表的映射。

内容的提问来源于stack exchange,提问作者Mike Deng

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.23 23:57:05