Сбой надстройки из-за несовместимости пакетов - PullRequest
0 голосов
/ 02 июня 2018

У меня есть соединение с базой данных SQL Server, которую я создал в Micrososft SQL Server Management Studio.Я подключен, используя свой текущий ip.

В день, когда я открыл соединение и базу данных, я также создал таблицу с использованием миграций и Entity Framework, и таблица была успешно создана.

Возвращение к работепосле выключения компьютера ночью, а затем обратно утром, я пытаюсь выполнить миграцию надстроек в консоли PM и получаю сообщение об ошибке:

Ваш стартовый проект TowerOfPower не ссылается на Microsoft.EntityFrameworkCore.Design.Этот пакет необходим для работы основных инструментов Entity Framework.Убедитесь, что ваш загрузочный проект корректен, установите пакет и попробуйте снова.

Странно, но затем, когда я пытаюсь установить пакет

Install-Package Microsoft.EntityFrameworkCore.Design -Version 2.1.0

, я получаю сообщение об ошибке:

Install-Package: Не удалось установить пакет 'Microsoft.EntityFrameworkCore.Design 2.1.0'.Вы пытаетесь установить этот пакет в проект, который нацелен на «.NETFramework, Version = v4.0», но пакет не содержит никаких ссылок на сборки или файлов содержимого, совместимых с этой платформой.За дополнительной информацией обращайтесь к автору пакета.
В строке: 1 символ: 1
+ Install-Package Microsoft.EntityFrameworkCore.Design -Version 2.1.0
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ КатегорияInfo: Не указано: (:) [Install-Package], Исключение
+ FullyQualifiedErrorId: NuGetCmdletUnhandledException, NuGet.PackageManagement.PowerShellCmdlets.InstallPackageCommand

1023
1023 *1023* 1023Я попытался исправить это, установив другие пакеты, как это было предложено в Интернете, но все равно получил последнюю ошибку, которую я упомянул для всех из них.

1 Ответ

0 голосов
/ 02 июня 2018

Я думаю, что есть большое противоречие в ваших типах фреймворков.Во-первых, если вы разрабатываете проект .NetCore, вы должны использовать EfCore для развития ORM.В проекте .NetFramework вы должны использовать Entity Framework.

Если мы посмотрим на последнее сообщение об ошибке,
Вы пытаетесь загрузить неправильный проект nuget.В соответствии с сообщением об ошибке вы пытаетесь установить EntityFrameworkCore packege на ". NETFramework, Version = v4.0 '" Для этой платформы вы должны использовать Install-Package EntityFramework -Версия 6.2.0

Наконец, если вы используете несколько проектов в одном решении, вы должны быть уверены в типах структур проекта (например: .Net или .NetCore)

enter image description here

При использовании консоли диспетчера пакетов необходимо выбрать правильный проект в Проект по умолчанию ComboBox

...