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

如何在Entity Framework Code First模式下启用迁移?(航空管理系统场景)

如何在AirlineManagementSystem的EF Code First模式下启用迁移

嘿,我来一步步帮你搞定这个问题!首先得确认你已经把Plane和User的一对多关系配置正确了——要是还没弄好,先补一下:

  • 在User类里加个外键属性和导航属性:public int PlaneId { get; set; } 以及 public Plane Plane { get; set; }
  • 在Plane类里加集合导航属性:public ICollection<User> Users { get; set; } = new List<User>();
  • 别忘了在你的DbContext类里加上这两个实体的DbSet:
    public DbSet<Plane> Planes { get; set; }
    public DbSet<User> Users { get; set; }
    

接下来打开Visual Studio的包管理器控制台(路径:工具 → NuGet包管理器 → 包管理器控制台),按下面的步骤执行命令:

  1. 启用迁移
    先运行这个命令,它会在项目里生成Migrations文件夹和配置文件:

    Enable-Migrations -ProjectName AirlineManagementSystem
    

    如果你有多个DbContext,就加上-ContextTypeName参数指定你的上下文类名,比如Enable-Migrations -ProjectName AirlineManagementSystem -ContextTypeName AirlineDbContext。

  2. 创建初始迁移脚本
    现在为当前的实体模型(包含Plane、User和它们的关联)生成迁移脚本,名字可以自己取,方便后续识别:

    Add-Migration InitialPlaneAndUserSetup -ProjectName AirlineManagementSystem
    

    执行后,Migrations文件夹里会多出一个带时间戳的.cs文件,里面就是创建数据库表和外键关系的代码。

  3. 把迁移应用到数据库
    最后一步,让EF把这个迁移脚本执行到数据库里,生成对应的表:

    Update-Database -ProjectName AirlineManagementSystem
    

    要是需要回滚或者指定迁移到某个版本,还可以用-TargetMigration参数,比如Update-Database -TargetMigration:InitialCreate。

这样操作下来,你的数据库就会同步当前的实体模型啦!

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.19 04:11:15