Сбой консоли диспетчера пакетов при использовании Add-Migration

Я использую консоль диспетчера пакетов для добавления миграции в свою базу данных, и по какой-то причине она просто зависает и ничего не делает. Единственный способ остановить его и продолжить использовать — закрыть Visual Studio с помощью диспетчера задач. Это известная проблема?


person Sachin Kainth    schedule 07.11.2012    source источник
comment
Только 3 просмотра и ни одного ответа. Мораль истории: не используйте самые современные вещи, которые выпущены. :-)   -  person Sachin Kainth    schedule 07.11.2012


Ответы (2)


Я не уверен, что это известная проблема, но у меня была такая же проблема, и я нашел для нее решение.

Мне пришлось бежать:

Enable-Migrations -ContextTypeName MyContext -ProjectName MyProject.Framework -StartUpProjectName MyProject.Web

Где я указал:

  • -ContextTypeName как имя моего контекста
  • -ProjectName как проект, содержащий мой файл контекста
  • -StartUpProjectName как проект, содержащий веб-приложение.

Вы можете обратиться к этому ресурсу для получения дополнительной информации: http://coding.abel.nu/2012/03/ef-migrations-command-reference/

person Sean Keating    schedule 18.11.2012
comment
Enable-Migrations устарела. - person Anis Tissaoui; 23.08.2018

Основываясь на ответе Шона Китинга, если он решил вашу проблему "Enable-Migrations", вы должны знать, что этого может быть недостаточно. .

Добавить-миграцию

Чтобы создать новый сценарий миграции, вы делаете это, как обычно:

Add-Migration MyModifications

Обновление базы данных

Однако, чтобы обновить базу данных, вам нужно будет указать проект вашего контекста:

Update-Database -ProjectName MyProject.Framework

Где я указал:

  • -ProjectName как проект, содержащий мой файл контекста
person Maxime    schedule 17.08.2016
comment
@downvoter: Почему? Знание того, что вы также должны указать проект при обновлении базы данных, очень важно. - person Maxime; 19.01.2018
comment
Я бы хотел, чтобы люди добавляли комментарий, когда они голосовали против. Это может быть полезно. Я проголосовал за это, потому что добавление -ProjectName фактически позволило моей базе данных обновлений успешно работать. Раньше я просто использовал -StartupProjectName. Это отлично работало для создания миграции, но база данных обновлений аварийно завершала работу. Примечание. У меня есть несколько запускаемых проектов. - person Darrell Lloyd Harvey; 05.02.2018
comment
Я знаю, что это было давно, но я подозреваю, что причина отрицательного ответа заключается в том, что другой ответ уже содержит подробности об опции ProjectName. Этот ответ ничего не добавляет. - person leviathanbadger; 02.03.2018
comment
Указание названия проекта во время Enable-Migration отличается от того, что я предложил. Может быть, тот человек этого не видел. Кто знает... - person Maxime; 05.03.2018