Entity Framework: запуск миграции EF для предыдущей версии в Net Core

У меня установлен Net Core 3.1.1000. Теперь мы пытаемся выполнить миграцию ef с предыдущим решением базы данных EF Core 2.2.6,

при выполнении следующего получить ошибку ниже.

dotnet ef migrations add InitialCreate

Приложение для выполнения не существует: .dotnet \ tools.store \ dotnet-ef \ 2.2.6-servicing-10079 \ dotnet-ef \ 2.2.6-servicing-10079 \ tools \ netcoreapp2.2 \ any \ dotnet-ef .dll '.

Как мы можем это решить?

Как я могу указать непосредственно на целевой каталог DLL и выполнить его? Я слышал, переименование каталога файлов - не лучшая идея.

Я вижу, что настоящая dll находится здесь:

.... dotnet \ tools.store \ dotnet-ef \ 2.2.6 \ dotnet-ef \ 2.2.6 \ tools \ netcoreapp2.2 \ any \ dotnet-ef.dll

уже запустил это и установил это: dotnet tool install --global dotnet-ef


person Community    schedule 24.06.2020    source источник
comment
привет @TheGeneral прочитал, что, не уверен, какое было предложенное решение, у них немного другая проблема, я считаю   -  person    schedule 24.06.2020
comment
docs.microsoft.com/en-us/ef/core/what-is-new/ef-core-3.0/?   -  person Jeremy Lakeman    schedule 24.06.2020
comment
полностью удалите предыдущую версию ядра .net и повторите попытку. и измените версию целевой платформы ядра .NET в свойствах проекта.   -  person CodeMind    schedule 03.07.2020


Ответы (2)


Решение

Чтобы исправить это, вы должны выполнить эти два шага.

  1. # P3 #
    # P4 # # P5 #
  2. Установите предыдущий пакет SDK для .NET Core. .NET Core v2.2

Чтобы воспроизвести эту ошибку

Я создал чистую виртуальную машину и только что установил .NET Core v3. Затем я выполнил команду dotnet ef migrations add InitialCreate, как вы упомянули. Получила следующую ошибку:  введите описание изображения здесь

Итак, я установил предыдущую версию .NET Core SDK (v2.2), и проблема была решена.

Рекомендация

Microsoft не рекомендует использовать .NET Core версии 2.x.x. Срок службы этих выпусков подошел к концу, что означает, что они больше не поддерживаются. Они рекомендуют перейти на поддерживаемый выпуск, например .NET Core 3.1.

person Willian    schedule 28.06.2020
comment
@ Artportraitdesign1, на основе ваших обновлений я смоделировал вашу ошибку и смог найти правильное решение. Кроме того, я немного изменил свой ответ, чтобы помочь вам. Ваше здоровье - person Willian; 30.06.2020

Как насчет выполнения приведенной ниже команды в консоли диспетчера пакетов Visual Studio.

add-migration InitialCreate
person Rod Talingting    schedule 02.07.2020