Entity framework 重命名导航属性,同时在实体框架中保持数据完整

Entity framework 重命名导航属性,同时在实体框架中保持数据完整,entity-framework,Entity Framework,为用户表(不同类型的用户)创建一个带有多个外键的订单表 Order实体具有多个属性,表示用户表的键 问题是这些导航属性被命名为User1、User2、User3等等 是否有方法更新这些属性的名称,并在更新数据模型时保持它们的完整性 例如,在开发过程中的某些时候,如果我对该表进行更改,我会在某些时候从模型中删除该表、更新和重建等 我想我只需要手动重命名这些属性,如果我更新了表和数据模型,请记住这样做,或者有其他方法吗?使用功能可以帮助您做到这一点。优点是,它可以帮助您对开发过程中所做的更改进行归档

用户表(不同类型的用户)创建一个带有多个外键的订单

Order实体具有多个属性,表示用户表的键

问题是这些导航属性被命名为User1、User2、User3等等

是否有方法更新这些属性的名称,并在更新数据模型时保持它们的完整性

例如,在开发过程中的某些时候,如果我对该表进行更改,我会在某些时候从模型中删除该表、更新和重建等

我想我只需要手动重命名这些属性,如果我更新了表和数据模型,请记住这样做,或者有其他方法吗?

使用功能可以帮助您做到这一点。优点是,它可以帮助您对开发过程中所做的更改进行归档。对于每个更改,都有一个类来表示数据库发生的更改

为项目启用迁移后:

首先关闭自动更新

    public Configuration()
    {
        AutomaticMigrationsEnabled = false;
    }
然后使用生成迁移类。在package manager中编写以下内容:

add-migration renameColumns
然后编辑所创建的类以用rename替换add/drop

   public override void Up()
    {
        RenameColumn("Orders", "OldColumn", "NewColumn");
最后在包管理器中运行update命令以影响数据库

  Update-Database