У меня есть две таблицы (Device
и PropertyValue
), и когда я пытаюсь удалить Device
, я получаю исключение:
нарушает внешний ключ
Я также попытался установить каскад на OnModelCreating()
, но все еще не работает.
public class Device
{
public int Id { get; set; }
public List<PropertyValue> Properties { get; set; }
}
public class PropertyValue
{
public int Id { get; set; }
public int? DeviceId { get; set; }
public Device Device { get; set; }
}
modelBuilder.Entity<PropertyValue>()
.HasOne(p => p.Device)
.WithMany(b => b.Properties)
.HasForeignKey(w => w.DeviceId)
.OnDelete(DeleteBehavior.Cascade);
РЕДАКТИРОВАТЬ : я использую репозиторий, но в основном я удаляю, используя _context.Devices.Remove(entity);