gpt4 book ai didi

c# - Entity Framework 迁移 : get database version as string

转载 作者:太空狗 更新时间:2023-10-29 18:03:58 25 4
gpt4 key购买 nike

我正在使用 EF5 开发 Web 应用程序。我想在管理页面上显示数据库版本(即迁移的名称)...这样,如果站点部署到我没有数据库管理员权限的环境中,我仍然可以登录如果我需要生成升级脚本,请在后端查找版本。是否有属性(property),例如我可以使用哪些 DBContext 来获取此信息?

最佳答案

Entity Framework 会创建迁移历史表来管理数据库版本。

Migrations history table is a table used by Code First Migrations to store details about migrations applied to the database. By default the name of the table in the database is __MigrationHistory and it is created when applying the first migration do the database. Source

您可以使用MigrationId 列作为数据库版本。该列的值类似于 201408011306353_InitialCreate。只需按前 15 个字符降序获取最后一行的顺序。

using (var context = new AppContext())
{
var query = "select top 1 MigrationId from __MigrationHistory order by LEFT(MigrationId, 15) desc";
var migrationId = context.Database.SqlQuery<string>(query).FirstOrDefault();
}

关于c# - Entity Framework 迁移 : get database version as string,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25081008/

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