提问人:Aiyuni 提问时间:5/5/2023 最后编辑:Guru StronAiyuni 更新时间:5/5/2023 访问量:184
如何从 VersionInfo 中确定 Fluent Migrator 的当前版本?
How to determine current version from VersionInfo for Fluent Migrator?
问:
我在 .NET 6 中使用 Fluent Migrator。
我知道 Fluent Migrator 会查看 VersionInfo 表,以确定当我们向下迁移或向上迁移时需要应用哪些迁移。
例如,我们可以不使用任何参数,Fluent Migrator 将在查看数据库中的 VersionInfo 表后自动确定我们需要应用哪些迁移(如果有)。runner.MigrateUp()
我的问题是,我们如何在 C# 代码中获取当前版本,以便我们可以确定是向上还是向下迁移到用户输入的版本号?
换句话说,我想做这样的事情:
if (userInputVersion > currentVersion)
{
runner.MigrationUp(userInputVersion)
}
else
{
runner.MigrationDown(userInputVersion)
}
有没有办法通过 Fluent Migrator 方法在 C# 代码中找到这个“currentVersion”,而无需对数据库表本身进行原始查询?
答:
2赞
Guru Stron
5/5/2023
#1
尝试用于此目标(应通过 DI 提供,如进程内示例所示):IVersionLoader
IVersionLoader versionLoader = ...; // should be available via DI
var latest = versionLoader.VersionInfo.Latest();
评论