问题标签 [migratordotnet]

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 回答
282 浏览

.net - Migratordotnet:如何检查迁移是否挂起?

如果有挂起的迁移,我想通过 MSBuild 停止我的构建过程。

但我不想在构建我的项目时触发 Migrate 目标。

那么,如何使用 Migratordotnet 仅检查挂起的迁移?
我只是想用它作为一个标志来停止我的构建过程.. !!

提前致谢 !

0 投票
1 回答
168 浏览

migration - Migrator.NET - 架构迁移完成后运行 SQL

我想在执行架构迁移后运行一些 SQL。

几点:

  1. 如果我在 Up 函数调用期间执行 SQL,它不会使用最新的架构版本执行,因为架构更新会在之后生效。

  2. 调用 Database.Commit() 会立即提交更改,但连接已关闭,因此无法执行 SQL。

  3. 在 AfterUp() 函数中调用我的 SQL,连接也会关闭。

模式更新后我应该如何执行一些 SQL?

0 投票
1 回答
206 浏览

entity-framework - 是否可以在 Migrator .NET 迁移中使用 EF codefirst 数据库初始化程序?

我正在使用 Migrator.NET 来管理我们生产环境中的架构更改。因为我一直在使用 EF 代码优先,所以对数据库的所有开发都是代码优先类的增量,并且没有对项目应用迁移。

但是,一旦项目处于生产环境中,我希望能够开始使用迁移。作为基线“向上”迁移,我想使用代码优先的数据库初始化程序来创建数据库并使用默认数据进行初始化。但是,我遇到了问题,因为 EF 上下文类和我的 EF 初始化程序的包装类位于 .NET 4 中,而迁移器 .NET 使用的是 .NET 2。

运行迁移器控制台应用程序时,我得到“这个程序集是由比当前加载的运行时更新的运行时构建的......”

我对这个工作期望很高吗?我可以使用 OSQL 并在服务器上创建 SQL 脚本,但如果它像在开发环境中那样工作,那就太好了。

0 投票
0 回答
93 浏览

c# - migrator.net - 你能生成模式吗

我想知道一旦你已经创建了一个数据库和/或已经运行了迁移,是否有办法在 C# 和 migrator.net api 中生成一个完整的模式?

0 投票
1 回答
1351 浏览

c# - 将 Migrator.NET 添加到现有的生产数据库

我有兴趣开始将 Migrator.NET 与现有的生产数据库一起使用。我有一些需要支持的初始状态:

a) 数据库处于当前版本(我们开始使用 Migrator 的版本),无需升级。初始化 Migrator 为将来的数据库升级做准备。

b) 没有数据库,运行我的初始数据库创建脚本(让我们的数据库达到使用 Migrator 开始的点)。将 Migrator 版本初始化为 0(或 1?),为将来的数据库升级做准备。在初始化起点后运行可能需要的任何数据库迁移。

关于如何最好地处理这件事有什么想法吗?

顺便说一句,我对除 Migrator .NET 之外的其他解决方案持开放态度。这似乎是最成熟的,尽管它还没有开发一年多。

0 投票
1 回答
1784 浏览

c# - 在 FluentMigrator 中分​​离测试数据

我想将测试数据每个环境可能不同)与实际的数据库创建分开。
我知道您可以为此目的使用配置文件,但据我了解,您在其他迁移结束时调用它们一次。

我想要的是让它们基于迁移版本,所以:

  • 迁移 X 创建表“用户”
  • 测试数据分别插入“用户”

我该怎么做呢?

0 投票
1 回答
288 浏览

c# - MigratorDotNet:没有找到具有迁移属性的公共类

得到下一个执行尝试使用 MigratorDotNet 应用迁移:

构建一般,没有出现配置错误。

我已经构建了包含下一个内容的配置文件:

我有一个测试迁移:

执行迁移:C:\Windows\Microsoft.NET\Framework64\v4.0.30319\MSBuild.exe mbuild.proj /t:Migrate

0 投票
2 回答
177 浏览

asp.net-mvc-4 - 迁移不在主机上运行

我正在使用 MigratorDotNet 来管理我的 Web 应用程序的 Rails 样式迁移。我有一个工作流程,如果我删除数据库中的所有表,我可以访问一个安装视图,该视图将运行 MigratorDotNet 并创建所有必要的表。

这在本地有效。出于某种原因,当我将代码上传到我的 Arvixe 主机时,迁移永远不会运行。我收到这个奇怪的错误:

There is already an object named 'SchemaInfo' in the database.

这很奇怪,因为在运行迁移之前,我手动删除了数据库中的所有表(以确保它没有从以前的安装中遗留下来)。

我的代码基本上归结为:

new Migrator.Migrator("SqlServer", connectionString.ToString(), migrationsAssembly).MigrateToLastVersion();

我已经通过记录连接字符串是否正确(生产/托管设置)来验证,并且程序集已正确加载(名称和版本)。

在本地工作,但不在 Arvixe 上。我该如何解决这个问题?

0 投票
1 回答
163 浏览

fluent-migrator - 用于插件架构的 MigratorDotNet

我们开始使用 Migrator.NET 来管理我们的数据库迁移,这太棒了,但我们还有一个额外的要求,即为我们的软件编写的插件需要添加自己的自定义字段(当然取决于插件)。

所以基本上我们有一个核心数据库表和我们的插件特定表。

我希望在 Migrator.NET 中我会看到一些像这样的附加属性

这样我就可以插入开发人员然后就可以做类似的事情

不幸的是,这个参数不存在,版本表似乎没有任何地方可以存储标签/插件名称

有人知道我将如何去做吗?

我已经看到 Ruby/Redmine 支持这种架构,因为它们允许插件包含自己的数据库迁移,但是希望能够在 MigratorDotNet 中做到这一点。

0 投票
0 回答
68 浏览

c# - Migrator.net 如何知道当前版本

工具 migrator.net 如何知道数据库的当前版本是什么?

应用程序必须在某处存储版本信息,以便在更改数据库版本时进行正确的迁移。我想阅读这些信息并向应用程序的用户显示数据库版本。