sea*_*288 8 entity-framework multiple-databases code-first ef-migrations
我有两个数据库,每个数据库都有自己的dbcontext.我设置了两个迁移配置.我可以为第一个db ust fine(Add-Migration DB1_InitialCreate -ConfigurationTypeName DB1Configuration)添加一个迁移.当我尝试使用:使用第二个db创建初始迁移时Add-Migration DB2_InitialCreate -ConfigurationTypeName DB2Configuration,我收到以下错误:
由于以下显式迁移未决,因此无法生成显式迁移:[201205082215265_DB1_InitialCreate].在尝试生成新的显式迁移之前应用挂起的显式迁移.
所以我按照它说的做,并用以下内容更新数据库:
Update-Database -ConfigurationTypeName DB1Configuration
Run Code Online (Sandbox Code Playgroud)
然后我尝试再次为第二个数据库添加迁移,但我一直收到相同的错误.
有关如何使迁移适用于两个数据库/上下文的任何想法?
sea*_*288 11
我已经能够回答我自己的问题了.我的两个配置类存在于同一个命名空间中.我把它们分开后,一切都运转了.
使用Entity Framework 6很容易.
对于一个数据库,多个DbContexts和每个自己的数据库的多个DbContexts都是相同的过程:
Enable-Migrations -ContextTypeName <DbContext-Name-with-Namespaces> -MigrationsDirectory:<Migrations-Directory-Name>
Add-Migration -configuration <DbContext-Migrations-Configuration-Class-with-Namespaces> <Migrations-Name>
Update-Database -configuration <DbContext-Migrations-Configuration-Class-with-Namespaces> -Verbose
已经有一段时间了,但这可能是你问题的更好答案:)
Update-Database -ConfigurationTypeName "SlaveConfiguration"
-StartupProjectName "FacturatieMVCv2.Data" -Verbose
-ConnectionString "connstring;"
-ConnectionProviderName "System.Data.SqlClient"
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
8464 次 |
| 最近记录: |