ASP.NET Core Модель обратного инженера с существующей базой данных MySql - PullRequest
0 голосов
/ 04 июля 2018

Я пытаюсь сделать проект ASP.NET Core с EF Codefirst и существующей базой данных MySql. Когда я пытаюсь сделать обратный инженер (по статье: Начало работы с EF Core на ASP.NET Core с существующей базой данных )

У меня ошибка. Мой пакет MySql: MySql.Data.EntityFrameworkCore -Version 8.0.11

Моя база данных: ТЕСТ МОЙ СТОЛ

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. 

Кто-нибудь знает, как я могу продать это? Есть ли способ сделать модели, если мастер, как ASP.NET Web API в .NET Framework?

1 Ответ

0 голосов
/ 07 сентября 2018

Попробуйте эту работу для меня. Это также NET Core-совместимый коннектор MySQL + провайдер EF Core MySQL:

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