EF Data Migrations не работает после закрытия проекта - PullRequest
4 голосов
/ 30 декабря 2011

Я использую миграцию данных структуры объекта.если я что-то изменяю в Entites или что-то еще, я пытаюсь использовать « add -igration MyFirstMigration » на консоли диспетчера пакетов.Но он возвращает исключение:

The term 'add-migration' is not recognized as the name of a cmdlet, function, script  file, or operable program. Check the spelling of the name, or if a path was inclu
ded, verify that the path is correct and try again.
At line:1 char:14
+ add-migration <<<< 
+ CategoryInfo          : ObjectNotFound: (add-migration:String) [], CommandNotFoundException
+ FullyQualifiedErrorId : CommandNotFoundException

, если я удалю EntityFramework.Migrations из Nuget и переустановлю его с тем же кодом (" add -igration MyFirstMigration ", "update-database") до закрытия проекта.

как я могу это исправить?кто-нибудь еще испытывает это?

РЕДАКТИРОВАТЬ: он отлично работает на другом ПК, кстати ...

Ответы [ 2 ]

12 голосов
/ 25 марта 2012

Я столкнулся с этим также, хотя я тестирую VS 11 и EF5, так что это может не относиться к вам.Это может быть несколько вещей.

Вы должны открыть VS в следующем порядке:

  1. При открытом VS закройте консоль диспетчера пакетов
  2. Закрыть VS
  3. Открыть VS
  4. Открыть проект
  5. Открыть консоль диспетчера пакетов

Если закрыть VS, когда откроется консоль диспетчера пакетов,это помнит это.Затем, когда вы снова открываете VS, консоль диспетчера пакетов уже открыта, прежде чем вы откроете свой проект, и она запутается.


Другая возможность состоит в том, что у вас установлены другие пакеты EF, которые не знают о«add -igration», и они мешают.

Запустите «get-package» в консоли диспетчера пакетов, чтобы увидеть, что установлено.Удалите ненужные / старые вещи.

0 голосов
/ 10 марта 2016

Иногда эта ошибка возникает, когда мы копируем и вставляем команду в открытой по умолчанию консоли диспетчера пакетов (PMC), я также получаю ту же ошибку при вставке команды и попытке ее выполнить, но когда я закрывал PMC и VS и снова Я открываю VS и затем PMC, после этого я набираю команду PMC, после чего она выполнена успешно.

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