使用Pomelo.EntityFrameworkCore.MySql 2.1.4强制innodb引擎

时间:2019-02-09 23:35:01

标签: c# asp.net-core entity-framework-core

我尝试使用Pomelo.EntityFrameworkCore.MySql 2.1.4在以innodb作为引擎的mysql数据库中生成一些表,但是当我运行update-database时,它使用myisam和latin1_swedish_ci排序规则来生成它们

在我的startup.cs中有这个:

public void ConfigureServices(IServiceCollection services)
{


services.AddMvc().SetCompatibilityVersion(CompatibilityVersion.Version_2_1);
        services.AddDbContext(
                options => options.UseMySql(Configuration.GetConnectionString("DefaultConnection"),
                    mysqlOptions => {
                        mysqlOptions
                            .CharSetBehavior(CharSetBehavior.AppendToAllColumns)
                            .AnsiCharSet(CharSet.Latin1)
                            .UnicodeCharSet(CharSet.Utf8mb4);
                    }                
                )
            );

}


我的上下文是:

public class DataAccessContext : DbContext
{


 public DataAccessContext(DbContextOptions options) : 
    base(options) {}

   public DbSet Empresas { get; set; }

   public DbSet Sucursales { get; set; }
   ...

 protected override void OnModelCreating(ModelBuilder builder)
 {
 }

}

您知道为什么会这样吗?也许我需要设置一个变量或配置其他内容?

0 个答案:

没有答案