0
이전에 마이 그 레이션을 만들 때 계단식 삭제가 true로 설정되고 데이터베이스가 업데이트되었습니다. 솔직히 계단식 제거가 사실로 설정되었음을 알지 못했습니다. 데이터베이스에 여러 마이그레이션을 적용한 후에 캐스케이드 삭제를 false로 설정해야하지만 캐스케이드 삭제가 계속되기 때문에 작동하지 않습니다. 엔터티 프레임 워크 6에서 false로 설정하면 캐스케이드 삭제가 작동하지 않음
이
는 고객이 많은 차량을 가질 수 있습니다 내가 만든 일대 다 관계이고, 차량 한 고객에 속하는 :public class Customer {
public int Id { get; set; }
public string Name { get; set; }
public string Phone { get; set; }
public string Address { get; set; }
public List<Vehicle> Vehicles { get; set; }
public Customer()
{
Vehicles = new List<Vehicle>();
}
}
이것은이다 : 이것은 내 고객 클래스
입니다 내 Vehicle 클래스 :
public class Vehicle {
public int Id { get; set; }
public string Enrollment{ get; set; }
public string Chassis { get; set; }
public float? Kilometers{ get; set; }
public int? CylinderCapacity{ get; set; }
public Customer Customer { get; set; }
public int CustomerId{ get; set; }
}
그리고 이것은 내 유창함 API 구성입니다 :
,210그리고 마이그레이션 클래스는 이것이다 :
내가 고객이 여전히 차량을 삭제하고, 내가 그 행동을하지 않으려는 삭제 어떤 이유public partial class DisableDeleteOnCascade : DbMigration
{
public override void Up()
{
DropForeignKey("dbo.Vehicles", "CustomerId", "dbo.Customers");
AddForeignKey("dbo.Vehicles", "CustomerId", "dbo.Customers", "Id");
}
public override void Down()
{
DropForeignKey("dbo.Vehicles", "CustomerId", "dbo.Customers");
AddForeignKey("dbo.Vehicles", "CustomerId", "dbo.Customers", "Id", cascadeDelete: true);
}
}
. 여기서 내가 뭘 잘못하고 있니?