问题标签 [entity-framework-migrations]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
1078 浏览

entity-framework-migrations - EF 4.3.1 - 代码优先自动迁移 - 如何指定列宽

我正在尝试查找与 DbMigration 和 ColumnModel 相关的示例或文档。我只是想在 DBMigration Up 方法中指定字符串属性的宽度,例如

将创建 nvarchar(max) - 例如,我想指定 maxlength(20) 。这是与 EntityTypeConfiguration 集成还是我必须手动添加

MSDN 帮助没有给出任何示例,ef4 博客上的演练仅涵盖基础知识

0 投票
27 回答
111791 浏览

entity-framework - 术语“更新数据库”未被识别为 cmdlet 的名称

我正在使用 EF5 beta1,虽然我之前能够运行“更新数据库”。现在我关闭了 Visual Studio,我无法让它运行。我收到以下错误:

术语“更新数据库”不被识别为 cmdlet、函数、脚本文件或可运行程序的名称。检查名称的拼写,或者如果包含路径,请验证路径是否正确并重试。在 line:1 char:16 + Update-Database <<<< -verbose + CategoryInfo : ObjectNotFound: (Update-Database:String) [], CommandNotFoundException + FullyQualifiedErrorId : CommandNotFoundException

我尝试重新安装 EF5b1,虽然成功(已安装),但“更新数据库”仍然无法正常工作。

谁能帮忙???

0 投票
1 回答
1605 浏览

c# - Entity Framework 4.3 合并多个数据库/上下文

我们使用的是 Entity Framework 4.3 Code First。我们有三个数据库。对于每个数据库,我们都有一个 DbContext。在第一个数据库中,我们有一些遗留表/sql。总体而言,大约有。70-80 个表/实体。

将来我们希望使用 EF 4.3 迁移。

  • 我们可以将所有三个数据库合并为一个并保留我们的三个 DbContext 类吗?
  • 合并 DbContext 类会更好吗?
  • EF 4.3 可以处理这个吗?
0 投票
1 回答
1482 浏览

entity-framework - 如何首先在实体框架代码中使用 MigratorScriptingDecorator?

我在使用MigratorScriptingDecorator.ScriptUpdateEntity Framework 4.3.1 时遇到问题。

当指定 sourceMigration 和 targetMigration 时,只有我的初始迁移被写入,其余的迁移变为空。

我在 Microsoft Connect 上输入了包含重现代码的错误报告。 https://connect.microsoft.com/VisualStudio/feedback/details/731111/migratorscriptingdecorator-in-entity-framework-migrations-does-not-respect-sourcemigration-and-targetmigration

我希望MigratorScriptingDecorator.ScriptUpdate("from", "to")行为与相应的 PM 命令完全相同

ScriptUpdate 是否应该等同于Update-Database -Script
还有其他从代码生成更新脚本的方法吗?

0 投票
1 回答
725 浏览

entity-framework - 实体框架 4.3 数据迁移 - 单种子方法?

我的项目中有多个迁移,每个迁移都会添加许多列。每次迁移后,我想根据其他已经存在的列将数据填充到列中。我在一个团队中工作,我们每个人都有一个包含测试数据的本地数据库。

目前配置类中只有一个种子方法。

使用一次迁移添加列,在种子方法中添加数据很好,但是对于每个迁移都添加列的多次迁移,除非我更新种子方法以匹配最近的迁移,否则它将不起作用。

为什么他们没有在 DbMigration 类中包含一个虚拟或抽象的 Seed 方法供人们在需要时覆盖?这似乎是一个更好的方法?

提前致谢

0 投票
3 回答
58706 浏览

code-first - 如何在 Entity Framework 4.3.1 中禁用迁移?

有没有办法在 Entity Framework 4.3.1 中禁用迁移?我从项目中删除了迁移文件夹和数据库中生成的表,但它不起作用!如何删除迁移?

0 投票
2 回答
11184 浏览

.net - 在没有 Web/App.config 的情况下运行实体框架 migrate.exe 工具的正确格式是什么?

我们最近切换到实体框架数据迁移,我正在为我们的 MVC 应用程序编写一些构建自动化脚本。如果我有一个 Web.config 指向它,我可以使用 4.3 中的 migrate.exe 工具从我们的构建服务器成功运行迁移。该命令类似于:

但是,由于各种原因,我想避免使用 Web.config 并在迁移时传入正确的连接字符串:

这不起作用。更糟糕的是,它会使用 NullReferenceException 使 migrate.exe 崩溃。连接字符串与我们在 Web.config 中使用的相同。

有人遇到过这个吗?我的连接字符串格式错误吗?漏洞?

0 投票
0 回答
298 浏览

entity-framework - 基于实体框架代码的迁移 - Visual Studio Lockup on Update -Script

使用 EF 4.3.1 基于代码的迁移。我添加了一个新的迁移(在初始之后)并完成了一个更新数据库。现在我想生成一个数据库脚本文件,所以我运行:

更新数据库-脚本-SourceMigration:$InitialDatabase

当我这样做时,Visual Studio 会锁定。我看到 2 个新选项卡:SqlQuery_1.sql 和 tmp5003.sql

知道是什么原因造成的以及如何克服它吗?

谢谢!

0 投票
2 回答
3763 浏览

c# - Entity Framework 4.3.1 总是在更新数据库上运行所有迁移

我已经使用Add-Migration. 当我Update-Database在空数据库上运行时,它会创建所有表,包括在 __MigrationHistory 表中添加一个条目。

现在我Update-Database再次运行只是为了测试,而不是“未检测到更改”我得到这个:

似乎更新不知道当前的数据库状态。唯一的解决方案是删除所有表并更新。如果我添加更多迁移,这也有效。

如您所见,我使用的数据库提供程序与平时不同(Devart.Data.Mysql),但我不确定问题是否存在。也许我错过了一些微不足道的东西?

0 投票
1 回答
2333 浏览

entity-framework-migrations - 无法在 Entity Framework 4.3.1 或更高版本中迁移数据库

编辑:我知道这个问题已关闭,因为最近我遇到了与以下代码示例中描述的完全相同的问题。

无法更新数据库以匹配当前模型,因为存在待处理的更改并且自动迁移已禁用。将挂起的模型更改写入基于代码的迁移或启用自动迁移。将 DbMigrationsConfiguration.AutomaticMigrationsEnabled 设置为 true 以启用自动迁移。

编辑(继续):此异常是由不带参数调用 Update 方法引起的(我确实反映了该方法并发现在不提供目标迁移名称的情况下,EF 希望您的数据库和模型与自动迁移兼容。

调用 Update("") 解决了我的问题。希望此编辑对某人有所帮助。