Entity Framework не будет установлен правильно, команда Enable-Migrations завершится неудачно - PullRequest
0 голосов
/ 24 марта 2020

Я пытаюсь следовать этому руководству: https://docs.microsoft.com/en-us/ef/ef6/modeling/code-first/migrations/

Я использую Visual Studio 2017 и Net 4.6.1.

С самого начала , кажется, что go неправильно. Когда я использую команду Install-Package EntityFramework в консоли диспетчера пакетов, я получаю это предупреждение:

Отсутствует тело функции в объявлении функции.

В C: \ Users \ TC \ Documents \ Temp \ Пример Entity Framework \ MigrationsDemo \ packages \ EntityFramework.6.4.0 \ tools \ EntityFramework6.PS2.psm1: 241 char: 5
+ <<<< WarnIfOtherEFs 'Enable-Migrations' <br>+ CategoryInfo : ParserError: (:) [], ParentContainsErrorRecordException
+ FullyQualifiedErrorId: MissingFunctionBody

Import-Module: Модуль для обработки 'EntityFramework6.PS2.psm1', указанный в поле 'ModuleToProcess' манифеста модуля 'C: \ Users \ TC \ Documents \ Temp \ Пример Entity Framework \ MigrationsDemo \ packages \ EntityFramework.6.4.0 \ tools \ EntityFramework6.PS2.psd1 'не обработан, так как ни в одном каталоге модулей не найдено ни одного действительного модуля.

В C: \ Users \ TC \ Documents \ Temp \ Пример Entity Framework \ MigrationsDemo \ packages \ EntityFramework.6.4.0 \ tools \ init.ps1: 11 char: 18
+ Import-Module <<<< (путь к соединению $ PSScript Root 'EntityFramework6.PS2.psd1') <br>+ CategoryInfo: ResourceUnavailable: (EntityFramework6.PS2: String) [Import-Module], FileNotFoundException
+ FullyQualifiedErrorId: Moile_Mdule , Microsoft.PowerShell.Commands.ImportModuleCommand

Если я продолжу работу с учебником, все будет отлично работать, пока я не достигну шага, на котором я запускаю Enable-Migrations в консоли диспетчера пакетов. Эта команда завершается с ошибкой:

Термин «Enable-Migrations» не распознается как имя командлета, функции, файла сценария или работоспособной программы. Проверьте правильность написания имени или, если путь был указан, проверьте правильность пути и повторите попытку.

В строке: 1 символ: 18
+ Enable-Migrations <<<< <br>+ CategoryInfo: ObjectNotFound: (Enable-Migrations: String) [], CommandNotFoundException
+ FullyQualifiedErrorId: CommandNotFoundException

Почему я получаю эту ошибку и что я могу сделать, чтобы исправить ее?

Редактировать

Я подумал, что это может помочь обновить мою среду разработки, поэтому я переключился на Visual Studio 2019 и нацелился на Net 4.7.2. Я продолжаю получать те же самые ошибки.

Может кто-нибудь сказать мне, можете ли вы воссоздать поведение, которое я описываю? Для моего процесса отладки было бы очень полезно узнать, является ли проблема моей целью или что-то не так с EntityFramework, который вызывает одинаковые ошибки для всех.

Редактировать

Все еще пытаясь найти исправление, я пробовал старые версии Entity Framework. Текущая версия 6.4.0 - не работает. Предыдущая версия 6.3.0 - не работает. Версия до этого - 6.2.0 - работает без проблем. Итак, я собираюсь начать разработку своего проекта с использованием 6.2.0. Если кто-нибудь знает, почему новые версии не работают, пожалуйста, сообщите мне. Я хотел бы быть на самой последней версии.

1 Ответ

0 голосов
/ 25 марта 2020

Я понял, что случилось. Для Entity Framework 6.4.0 требуется PowerShell 3 или выше. Я получал эти ошибки, потому что у меня был PowerShell 2. Я исправил все свои проблемы, обновив PowerShell.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...