asp.net CORE Миграции генерируются пустыми
Я пытаюсь следовать руководству, чтобы добавить миграцию (вторую), сгенерированную из IdentityDbContext
а также IdentityUser
,
Когда я бегу dotnet ef migration add <NAME>
это быть добавить, но UP
а также DOWN
пусты
Я обнаружил, что удаление данных из таблицы EFMigrationHistory может решить проблему, но таблица не содержит никакой информации об этой миграции, только о первой, которая уже была создана. Я попытался удалить все файлы.TMP, удалить и заново создать миграцию.
WorldUser:
namespace TheWorld.Models
{
public class WorldUser : IdentityUser
{
public DateTime FirstTrip { get; set; }
}
}
WorldContext:
namespace TheWorld.Models
{
public class WorldContext : IdentityDbContext<WorldUser>
{
private IConfigurationRoot _config;
public WorldContext(IConfigurationRoot config,DbContextOptions options) : base(options)
{
_config = config;
}
....
Странно то, что вчера это не сработало, а сегодня утром я попытался удалить все файлы.TMP, миграции и воссоздать его через CMD, и это сгенерировало миграцию, которая выглядела правильно, но глупо, я удалил ее, потому что у него было неправильное имя, и после воссоздания он больше не работает.
1 ответ
Ваша папка миграции должна содержать WorldContextModelSnapshot.cs
этот файл содержит определение для всей базы данных. Если модель уже определена в этом файле, она больше не будет отображаться в новых миграциях.
Если вы хотите снова сгенерировать миграцию, удалите модель из этого файла и снова сгенерируйте миграцию.