Невозможно включить миграцию для Entity Framework в библиотеке классов.

StackOverflow https://stackoverflow.com/questions/9527366

Вопрос

Я только что начал работать с EF 5 и использую их инструмент миграции кода, но, похоже, получаю сообщение об ошибке, когда пытаюсь включить миграцию.

Я печатаю Enable-Migrations в консоль менеджера пакетов, а затем говорит

В текущем проекте не найдены классы, производные от DbContext.
Отредактируйте созданный класс конфигурации, чтобы указать контекст, для которого необходимо включить миграцию.
Code First Migrations включена для проекта MyApp.MvcUI.

Затем он создает папку «Миграции» и класс конфигурации в моем проекте MvcUI.Дело в том, что мой DbContext живет в проекте библиотеки классов под названием MyApp.Domain.Он должен делать все это в этом проекте, и у него не должно возникнуть проблем с поиском моего DbContext.

Это было полезно?

Решение

Ох вау, неважно.Я тупой.

В консоли диспетчера пакетов Nuget вверху есть раскрывающееся меню с надписью «Проект по умолчанию:».Убедитесь, что вы установили это для проекта, для которого хотите запустить команду.

Надеюсь, это поможет кому-то еще избежать моей досадной ошибки.

Другие советы

На самом деле существует три способа запуска команд Nuget в конкретном проекте:

  1. [Консоль диспетчера пакетов] Установите активный проект в раскрывающемся списке в верхней части окна инструментов консоли.
  2. [Консоль диспетчера пакетов] Найдите параметр, указывающий проект.Для некоторых командлетов я видел -ProjectName, а некоторые использовали -Project.
  3. [Обозреватель решений] Щелкните правой кнопкой мыши нужный проект и воспользуйтесь графическим окном диспетчера пакетов («Управление пакетами NuGet...»).
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top