gpt4 book ai didi

c# - 使用上下文键更改的脚手架迁移

转载 作者:太空狗 更新时间:2023-10-29 19:53:41 24 4
gpt4 key购买 nike

我重组了我的项目,这导致了数据库上下文和相关代码优先配置的命名空间名称的更改。那时,我有一个脚手架迁移,“InitialCreate”,因此我的数据库的 __MigrationHistory 表包含一行,其中包含一些 MigrationId 和一个 ContextKey 包含 Configuration 类的命名空间名称和类名。

在我四处移动之后,执行 Get-Migrations 没有返回任何结果,在按照我同事的建议更改了 ContextKey 之后,“InitialCreate”迁移是正确的枚举。

在更改过程中我应该采取什么步骤才能不破坏迁移的连续性,从而避免手动重命名 ContextKey 的需要?显然,这对于一个应用迁移来说没什么大不了的,但是对于几十个应用迁移来说,这将是一个巨大的痛苦。

最佳答案

我被困在这个很长一段时间里,问了又回答了here .在 EF 文档中,您可以找到有关上下文键的解释 here .您应该像这样创建自定义迁移配置:

 public class MyMigrationConfiguration : DbMigrationsConfiguration<MyMigrationContext>
{
public MyMigrationConfiguration ()
{
AutomaticMigrationsEnabled = false;
AutomaticMigrationDataLossAllowed = false;
MigrationsNamespace = "My.Migrations.Assembly";
MigrationsDirectory = "My/Migrations/Directory";
ContextKey = "MyContexKey"; // You MUST set this for every migration context
}
}

关于c# - 使用上下文键更改的脚手架迁移,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27484276/

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