@lucky4

Как удалить кортеж из таблицы М-М?

Имеется таблица М-М(ТоварКатегория), в ней два аттрибута, которые выступают внешними ключами и могут быть обозначенные как null.
То есть, когда из таблицы удаляется кортеж с Товар и с Категория, то в бд будет эта запись(ее индекс/id) выглядить таким образом:
ID_NUMBER = null = null

Как можно избавиться от этого в EF CORE?

В этой сущности у меня только такое:
class ProductCategoryConfiguration : IEntityTypeConfiguration<ProductCategory>
    {
        public void Configure(EntityTypeBuilder<ProductCategory> entity)
        {
            entity
                .HasKey(property => new
                {
                    property.ProductId,
                    property.CategoryId
                });

            entity
                .HasOne(property => property.Product)
                .WithMany(property => property.ProductCategories)
                .HasForeignKey(property => property.ProductId)
                .OnDelete(DeleteBehavior.SetNull);

            entity
                .HasOne(property => property.Category)
                .WithMany(property => property.ProductCategories)
                .HasForeignKey(property => property.CategoryId)
                .OnDelete(DeleteBehavior.SetNull);
        }
    }
  • Вопрос задан
  • 45 просмотров
Пригласить эксперта
Ответы на вопрос 1
Можно вместо SetNull выбрать каскадное удаление.
Или бросать ошибку и удалять промежуточную запись
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы