【问题标题】:update database : error asp.net core with mysql更新数据库:使用 mysql 的 asp.net core 错误
【发布时间】:2021-06-18 17:38:28
【问题描述】:

我正在使用带有 EF 核心的 mysql 数据库。

我使用 Identity Schema 到我现有的 MySql 数据库,在迁移之后,更新数据库生成这个:

“已为名为“Role”的“CreateTableOperation”类型的对象设置了架构“Identity”。MySQL 不支持架构的 EF Core 概念。任何“MigrationOperation”的任何架构属性都必须为空。可以通过在UseMySql 调用中设置SchemaBehavior 选项来更改此行为。"

error pic 那么如何设置 schemabehavior 选项。 怀着感激之情。

【问题讨论】:

    标签: mysql entity-framework-core


    【解决方案1】:

    更新您的服务注册器 (Startup.cs) 并修改数据库上下文以将 SchemaBehavior 选项设置为以下选项之一:

    // Throw an exception, if a schema is being used. This is the default.
    options.UseMySql(myConnectionString, b => b.SchemaBehavior(MySqlSchemaBehavior.Throw))
    
    // Silently ignore any schema definitions.
    options.UseMySql(myConnectionString, b => b.SchemaBehavior(MySqlSchemaBehavior.Ignore))
    
    // Use the specified translator delegate to translate from an input schema and object name to
    // an output object name whenever a schema is being used.
    options.UseMySql(myConnectionString, b => b.SchemaBehavior(MySqlSchemaBehavior.Translate,
        (schema, entity) => $"{schema ?? "dbo"}_{entity}"))
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2022-01-20
      • 1970-01-01
      • 1970-01-01
      • 2020-12-02
      • 1970-01-01
      • 2020-04-14
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多