Ошибка обновления до Entity Framework Core 3: RelationalReferenceCollectionBuilderExtensions не существует в текущем контексте - PullRequest
1 голос
/ 07 апреля 2020

Я обновляю Entity Framework Core 2 до Entity Framework Core 3. И у меня есть эта ошибка:

Ошибка CS0103 Имя 'RelationalReferenceCollectionBuilderExtensions' не существует в текущем контексте

Ошибка в методе OnModelCreating (ModelBuilder modelBuilder), это код:

modelBuilder.Entity<Person>(entity =>
        {
            //some props

            RelationalReferenceCollectionBuilderExtensions.HasConstraintName((ReferenceCollectionBuilder)entity
                .HasOne(d => d.RuleCodeNavigation)
                .WithMany(p => p.Person)
                .HasForeignKey(d => d.RuleCode)
                .OnDelete(DeleteBehavior.ClientSetNull), "FK_Person_Rules");
        });

Кажется, класс RelationalReferenceCollectionBuilderExtensions не существует в EF Core 3. Есть идеи, как я могу это исправить?

1 Ответ

1 голос
/ 07 апреля 2020

Не уверен, что случилось с RelationalReferenceCollectionBuilderExtensions, но предложенный способ назвать ваши ограничения таков:

modelBuilder.Entity<Person>(entity =>
{
    //some props
    entity
        .HasOne(d => d.RuleCodeNavigation)
        .WithMany(p => p.Person)
        .HasForeignKey(d => d.RuleCode)
        .OnDelete(DeleteBehavior.ClientSetNull)
        .HasConstraintName("FK_Person_Rules");
});
...