EntityFramework Core 3.1 заполнение данных для битовых столбцов со значением по умолчанию 'true', генерируемым снова и снова - PullRequest
0 голосов
/ 07 февраля 2020

Я использую ядро ​​EntityFramework версии 3.1.1. Целевая база данных: SQL сервер

У меня проблема с миграцией начального числа данных, генерируемой ядром EntityFramework. Моя модель выглядит так:

public class MyTable
{
    public int Id { get; set; }

    public bool Flag { get; set; }
}

Мой DbContext выглядит так:

public class MyDbContext : DbContext
{
    public DbSet<MyTable> MyTable { get; set; }

    protected override void OnModelCreating(ModelBuilder modelBuilder)
    {
        modelBuilder.Entity<MyTable>()
            .Property(t => t.Flag)
            .HasDefaultValue(true);

        modelBuilder.Entity<MyTable>().HasData(new MyTable
        {
            Id = 1,
            Flag = true,
        });
    }
}

Итак, у меня есть таблица со столбцом bit со значением по умолчанию true.

Но когда я генерирую новые миграции с помощью dotnet ef migrations add, он снова и снова генерирует UpdateData операторов:

        migrationBuilder.UpdateData(
            table: "MyTable",
            keyColumn: "Id",
            keyValue: 1,
            column: "Flag",
            value: true);

Например, если я генерирую 5 миграций, я получу 5 UpdateData операторов без изменений файл снимка.

Что я делаю не так?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...