gpt4 book ai didi

c# - DbMigrationsConfiguration 如何与 EF 中的 DbMigration 相关

转载 作者:可可西里 更新时间:2023-11-01 09:11:39 25 4
gpt4 key购买 nike

在 Entity Framework 中,通过使用 Enable-Migrations 创建一个 Migrations 文件夹,其中包含从 DbMigrationsConfiguration 继承的 Configuration像这样:

internal sealed class Configuration : DbMigrationsConfiguration<MyDbContext>
{
...
}

所有使用 Add-Migration 创建的迁移也都放在 Migrations 文件夹中。

public partial class Init: DbMigration
{
public override void Up()
{
...
}

public override void Down()
{
...
}
}

我没有找到任何将这两者联系在一起的代码(例如在迁移中有一个配置属性)。我发现的唯一关系是两者都放在同一个文件夹中。如果我有超过 1 个 DbContext,因此有超过 1 个配置,我想知道如何区分这些 DbMigration

问题DbMigration 类如何与Configuration 相关?

最佳答案

它们按惯例相关。默认情况下,它将迁移存储在名为 Migrations 的根文件夹中。您可以在配置的构造函数(https://msdn.microsoft.com/en-us/library/system.data.entity.migrations.dbmigrationsconfiguration(v=vs.113).aspx)中或在启用迁移时覆盖它:

public Configuration()
{
AutomaticMigrationsEnabled = true;
MigrationsDirectory = @"Migrations\Context1";
}

对于多个上下文,使用 -ContextTypeName ProjectName.Models.Context2 -MigrationsDirectory:Migrations\Context2 为每个上下文创建不同的配置和文件夹。这是一个演练:http://www.dotnettricks.com/learn/entityframework/entity-framework-6-code-first-migrations-with-multiple-data-contexts

关于c# - DbMigrationsConfiguration 如何与 EF 中的 DbMigration 相关,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31267660/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com