В связи с этим вопросом: MVC 5 Seed Users and Roles Я попытался настроить начальное семя пользователя. Так я пробовал в Configuration.cs был:MVC5 Проблемы с посевом семян
var passwordHash = new PasswordHasher();
string defaultPassword = passwordHash.HashPassword("SuperPassword");
context.Users.AddOrUpdate(u => u.UserName,
new ApplicationUser
{
UserName = "[email protected]",
Email = "[email protected]",
PasswordHash = defaultPassword
});
Но теперь у меня есть проблема, что я не могу использовать команды для переноса базы данных. Решения, которые работали для других людей, к сожалению, мне не помогли.
При попытке обновить базу данных, я получаю сообщение об ошибке:
There is already an object named 'AspNetRoles' in the database.
Я пытался использовать Add-Migration <name> -IgnoreChanges
но получил ошибку, что миграция все еще не завершено.
Ранее я пытался включить-миграцию для моих обоего контекстов, но для одного я получил сообщение об ошибке:
Creating a DbModelBuilder or writing the EDMX from a DbContext created using Database First or Model First is not supported. EDMX can only be obtained from a Code First DbContext created without using an existing DbCompiledModel.
Enable-мигранты другого контекста просто переписали мой Configuration.cs с настраиваемыми семенами.
Вы можете добавить перенос с пустыми методами 'Up' и' Down'. Иногда EF выходит из синхронизации с базой данных и нуждается в миграции «sync», чтобы вернуться в линию. То есть: запустите 'Add-Migration sync', затем вручную просмотрите и удалите уже существующие изменения схемы в методах вверх/вниз (даже если это означает, что методы не делают ничего). – Rob
Я попробую, но как я могу отменить ожидающие миграции? Теперь есть ярлык, например Ctrl + C, не так ли? – Zumarta
, если их отменить, вы имеете в виду полностью избавиться от них; вам просто нужно удалить файл (ы) миграции. Если по отмене вы имеете в виду, что «не запускайте это время», я не думаю, что это возможно - по крайней мере, не без активной борьбы с EF (что я не рекомендую) – Rob