ASP.NET Core 3.0 Ошибка «Невозможно привести объект типа» во время скаффолдинга существующей базы данных - PullRequest
1 голос
/ 01 июня 2019

Я использую Visual Studio 2019. Мое приложение находится в ASP.NET Core 3.0.

Я пытаюсь создать существующую базу данных из LocalDb с помощью консоли диспетчера пакетов с помощью следующей команды:

 Scaffold-DbContext "Server=(localdb)\mssqllocaldb;
 Database=hamdoonsoft;Trusted_Connection=True;" 
 Microsoft.EntityFrameworkCore.SqlServer -OutputDir Appcontext

Через некоторое время я получаю эту ошибку:

Невозможно привести объект типа 'Microsoft.EntityFrameworkCore.Diagnostics.RelationalLoggingDefinitions' к типу 'Microsoft.EntityFrameworkCore.SqlServer.Diagnostics.Internal.SqlServerLoggingDefinitions'.

Что вызывает это и как я могу решить это?

1 Ответ

1 голос
/ 10 июня 2019

Это известная проблема в EFCore Preview 4 , цель которой была исправлена ​​в Preview 5. Сам столкнувшись с этой проблемой, я могу подтвердить, что обновление до Preview 5 оставляет мои ссылки .csproj для EFCore выглядит так:

<PackageReference Include="Microsoft.EntityFrameworkCore.Design" Version="3.0.0-preview5.19227.1" />
<PackageReference Include="Microsoft.EntityFrameworkCore.SqlServer" Version="3.0.0-preview5.19227.1" />

Решил проблему и позволил мне защитить DBContext.

...