Я получаю сообщение об ошибке при запуске enable-migrations в консоли диспетчера пакетов
Я делаю проект ASP.NET MVC... когда я набираю enable-migrations, я получаю следующие параметры:
More than one context type was found in the assembly 'eManager.Web'.
To enable migrations for eManager.Web.Infrastructure.DepartmentDb, use Enable-Migrations -ContextTypeName eManager.Web.Infrastructure.DepartmentDb.
To enable migrations for eManager.Web.Models.UsersContext, use Enable-Migrations -ContextTypeName eManager.Web.Models.UsersContext.
Ответы
Ответ 1
Сообщение об ошибке точно указывает, что представляет собой проблема и что нужно сделать, включая команду, которая должна быть выпущена. По-видимому, в вашем проекте более одного контекста (Web.Infrastructure.DepartmentDb и Web.Models.UsersContext), и миграции не знают, для какой из этих миграций следует включить. Вам нужно указать тип контекста. В соответствии с сообщением об ошибке используйте:
Enable-Migrations -ContextTypeName eManager.Web.Infrastructure.DepartmentDb.
чтобы включить миграцию для eManager.Web.Infrastructure.DepartmentDb или
Enable-Migrations -ContextTypeName eManager.Web.Models.UsersContext.
чтобы включить миграции для eManager.Web.Models.UsersContext
Ответ 2
Для тех, кто может захотеть остаться с одним контекстом в проекте. В этом случае это будет контекст DepartmentDb.
Переместите приведенный ниже код в свой контекст DepartmentDb:
public DepartmentDb()
: base("DefaultConnection")
{
}
public DbSet<UserProfile> UserProfiles { get; set; }