【问题标题】:Custom migration operation with Mysql in Entity Framework 6在 Entity Framework 6 中使用 Mysql 进行自定义迁移操作
【发布时间】:2017-11-26 01:47:21
【问题描述】:

这是一个简单的问题:是否可以使用MySqlMigrationSqlGenerator 为 mysql 创建自定义迁移操作?由于MySqlMigrationSqlGenerator 类没有像SqlServerMigrationSqlGenerator 那样实现Statement 方法,我怎么可能做到呢?

【问题讨论】:

    标签: c# mysql entity-framework-6


    【解决方案1】:

    您可以覆盖 MySqlMigrationSqlGenerator 中的 Generete 方法,并获得如下方法:

    protected override MigrationStatement Generate(CreateTableOperation op) => base.Generate(op);
    

    MigrationStatement 有一个Sql 字符串属性。您可以将自己的 Sql 添加到此 Sql 属性。即:

    protected override MigrationStatement Generate(CreateTableOperation op)
    {
        MigrationStatement statement = base.Generate(op);
    
        if(/*Your condition */)
        {
            statement.Sql += $@"; {/*Your Sql*/};";
        }
    
        return statement;
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2017-10-12
      • 2014-02-07
      • 2022-01-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-01-11
      相关资源
      最近更新 更多