Как заставить EntityTypeBuilder выставлять правильные комментарии по-новому? - PullRequest
1 голос
/ 08 ноября 2019

Я использую Npgsql.EntityFrameworkCore в моем проекте. Я настраиваю свою сущность следующим образом:

internal class MyEntityConfiguration : IEntityTypeConfiguration<MyEntity>
{
    public void Configure(EntityTypeBuilder<MyEntity> builder)
    {
        builder.HasComment("Entity description");

        builder.Property(e => e.Name)
            .IsRequired()
            .HasMaxLength(255)
            .HasComment("Name of entity");

        builder.Property(e => e.IsActual)
            .HasComment("Is entity actual");
    }
}

, поскольку ForNpgsqlHasComment устарел (и фактически работает нормально), и мы должны использовать HasComment, что делает неправильную миграцию:

migrationBuilder.CreateTable(
    name: "MyEntity",
    columns: table => new
        {
            Id = table.Column<int>(nullable: false)
                      .Annotation("Npgsql:ValueGenerationStrategy", NpgsqlValueGenerationStrategy.IdentityByDefaultColumn),
            Name = table.Column<string>(maxLength: 255, nullable: false, comment: "Entity description"),
            IsActual = table.Column<bool>(nullable: false, comment: "Entity description")
        },
    comment: "Entity description");

другими словами, использует "Entity description" во всех комментариях. Как исправить это поведение?

1 Ответ

0 голосов
/ 08 ноября 2019

Это ошибка 3.0 # 17474: комментарии объекта перезаписывают комментарии свойства .

Уже исправлено, но, к сожалению, исправление будет доступно в версии 3.1.

До тех пор вы ничего не можете сделать.

...