entity-framework - 如何让 EntityFramework Migration 为不同的数据库提供程序运行不同的 SQL
问题描述
我有一个 Entity Framework 6 应用程序。我正在将它从 SQL Server 迁移到 PostgreSQL。其中一个迁移如下所示:
使用 System.Data.Entity.Migrations;
public partial class SetIsActiveToTrue : DbMigration
{
public override void Up()
{
Sql(@"UPDATE dbo.""AspNetUsers"" SET ""IsActive"" = 1;");
}
public override void Down()
{
}
}
}
这在 SQL 服务器上运行良好,但在 PostgreSQL 上失败,因为 IsActive 列是一个布尔值并且期望 True/False 而不是 1/0。有没有办法让迁移为每个数据库运行不同的 SQL?
我查看了所有基类项目,但它们似乎都没有提供提供者类型。Up 和 Down 方法也不接受带有此信息的任何参数。
解决方案
推荐阅读
- mysql - 给定 MariaDb 查询中的年份、月份和星期,如何获取一周中第一天的月份日期?
- javascript - flex:1 隐藏
- javascript - 上传到 Github 页面时,我的网站 CSS 的某些部分没有实现?
- apache-nifi - NiFi 通过 JsonPathReader 或 JsonTreeReader 将 JSON 转换为 CSV
- sql-server - 将本周与前一周进行比较
- android - 同步融合许可证颤振 SfDateRangePicker
- mysql - 配置错误:我无法使用 Moodle 连接我的数据库
- python - 有没有更快的方法使用 Python 将数百万行从 Excel 移动到 SQL 数据库?
- python - 无法从 python“wasmer”导入“ImportObject”
- sql - SQL Server递归查询以显示父母的路径