【问题标题】:ASP.NET Core Reverse engineer model with MySql existing database使用 MySql 现有数据库的 ASP.NET Core 逆向工程模型
【发布时间】:2018-12-12 09:11:38
【问题描述】:

我尝试使用 EF Codefirst 和现有的 MySql 数据库制作一个 ASP.NET Core 项目 当我尝试做逆向工程师时(以下文章:Getting Started with EF Core on ASP.NET Core with an Existing Database )

我有一个错误。 我的MySql包是:MySql.Data.EntityFrameworkCore -Version 8.0.11

我的数据库是:TEST 我的桌子是

CREATE TABLE USER (
  ID               BIGINT(20)  NOT NULL AUTO_INCREMENT,
  USERNAME         VARCHAR(50) NOT NULL,
  FIRSTNAME        VARCHAR(50) NOT NULL
) ENGINE=InnoDB; 

我正在使用命令:

Scaffold-DbContext "server=localhost;port=3306;user=root;password=123;database=TEST" MySql.Data.EntityFrameworkCore -OutputDir Models

错误:

System.NotImplementedException: The method or operation is not implemented.
   at MySql.Data.EntityFrameworkCore.Scaffolding.Internal.MySQLDatabaseModelFactory.Create(String connectionString, IEnumerable`1 tables, IEnumerable`1 schemas)
   at Microsoft.EntityFrameworkCore.Scaffolding.Internal.ReverseEngineerScaffolder.ScaffoldModel(String connectionString, IEnumerable`1 tables, IEnumerable`1 schemas, String namespace, String language, String contextDir, String contextName, ModelReverseEngineerOptions modelOptions, ModelCodeGenerationOptions codeOptions)
   at Microsoft.EntityFrameworkCore.Design.Internal.DatabaseOperations.ScaffoldContext(String provider, String connectionString, String outputDir, String outputContextDir, String dbContextClassName, IEnumerable`1 schemas, IEnumerable`1 tables, Boolean useDataAnnotations, Boolean overwriteFiles, Boolean useDatabaseNames)
   at Microsoft.EntityFrameworkCore.Design.OperationExecutor.ScaffoldContextImpl(String provider, String connectionString, String outputDir, String outputDbContextDir, String dbContextClassName, IEnumerable`1 schemaFilters, IEnumerable`1 tableFilters, Boolean useDataAnnotations, Boolean overwriteFiles, Boolean useDatabaseNames)
   at Microsoft.EntityFrameworkCore.Design.OperationExecutor.ScaffoldContext.<>c__DisplayClass0_1.<.ctor>b__0()
   at Microsoft.EntityFrameworkCore.Design.OperationExecutor.OperationBase.<>c__DisplayClass3_0`1.<Execute>b__0()
   at Microsoft.EntityFrameworkCore.Design.OperationExecutor.OperationBase.Execute(Action action)
The method or operation is not implemented. 

有人知道我怎么卖这个吗? 如果像 .NET Framework 中的 ASP.NET Web API 这样的向导,有什么方法可以制作模型?

【问题讨论】:

标签: mysql asp.net-core scaffolding


【解决方案1】:

试试它对我的工作。这也是与 NET Core 兼容的 MySQL 连接器 + EF Core MySQL 提供程序:

Pomelo.Data.MySql      
Pomelo.EntityFrameworkCore.MySql   
Pomelo.EntityFrameworkCore.MySql.Design

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2010-12-25
    • 1970-01-01
    • 2018-04-20
    • 2014-09-30
    • 1970-01-01
    • 2017-12-31
    • 1970-01-01
    • 2023-03-07
    相关资源
    最近更新 更多