【问题标题】:Entity Framework 7 Update DbContext after migrationEntity Framework 7 迁移后更新 DbContext
【发布时间】:2016-05-08 12:25:17
【问题描述】:

我有一个现有的数据库和新的 WPF 项目。

1) 我使用Scaffold-DbContext 构建了数据库上下文,并收到了 DbContext.cs 和代表数据库表的每个实体的文件。没关系。 以下是其中之一的示例:

public partial class SomeEntity
    {
        public long SomeEntityID { get; set; }
        public int SomeInt { get; set; }
    }

2) 我手动更新了这个实体(DbContext.cs 中没有变化):

public partial class SomeEntity
    {
        public long SomeEntityID { get; set; }
        public int SomeInt { get; set; }
        public string SomeString { get; set; }
    }

3) 我用过Add-Migration 命令。现在我有了一个描述所需更改和 DbContextSnapshot.cs 的迁移文件。快照包括我刚刚对SomeEntity 所做的更改。数据库未更新。

4) 我用过Update-Database 命令。数据库已更新以匹配上次迁移。但是我的 DbContext.cs 对数据库的变化一无所知。它仍然是我在搭建 DB 后拥有的旧的好 DbContext。

这样好吗?我现在是否应该手动更改 DbContext 以匹配我对实体所做的更改并将它们应用于 DB?有没有办法在没有“重新脚手架”的情况下从 DB 更新 DbContext.cs? (因为比如实体文件中的所有cmets和attribute都会丢失,因为如果我再次使用Scaffold-DbContext,它们会被新的替换)

【问题讨论】:

    标签: c# entity-framework dbcontext entity-framework-core entity-framework-migrations


    【解决方案1】:

    您将不得不再次运行脚手架,但请记住生成的类是部分的,因此您可以将更改放在另一个文件中

    【讨论】:

      猜你喜欢
      • 2015-11-07
      • 1970-01-01
      • 1970-01-01
      • 2016-04-12
      • 2015-08-15
      • 1970-01-01
      • 1970-01-01
      • 2016-07-08
      • 2022-11-21
      相关资源
      最近更新 更多