를 업데이트하려고 삭제 :EF 내가이 시나리오를 가정하면 외래 키
Table Bar
Id int not null
Name string not null
및
Table Foo
Id int not nul
BarId int foreign key (Bar) references Id
내가 EF가 업데이트하려고하는 이유 푸에 대한 참조가 줄을 삭제하려고
Foo가 barId를 NULL로 설정 했습니까?누군가가 Bar에 NULL을 설정하려고 할 때 발생하는 내 속성에 대한 유효성 검사가 있으며 EF에서 Foo를 업데이트하려고 시도 할 때이 오류가 발생합니다.
내가 같은 쿼리를 실행 삭제하려고하면 "foo는 어디에서 삭제 ID = 1"내가 얻을 : 내가 EF를 사용하는 경우이 오류가 할
The DELETE statement conflicted with the REFERENCE constraint "FooFK".
The conflict occurred in database "teste", table "dbo.Bar", column 'BarId'.
. 이 일을 할 수있는 방법이 있습니까? EF 4.3을 사용하고 있습니다.
modelBuilder.Entity<Bar>().HasRequired(x => x.Foo).WithMany().Map(x => x.MapKey("FooId")).WillCascadeOnDelete(false);
그것은 인해 제약에 null로 BarId을 설정하려고 시도합니다. 계단식 삭제가 없으며 외래 키 열에 값이나 null이 필요합니다. 제약 조건을 게시 할 수 있습니까? – scheien
하지만 내 열은 NULL을 허용하지 않습니다. –
제약 조건 : ALTER TABLE [dbo]. [화물] FOR CHECK ADD CONSTRAINT [CargoRaiz_Instituicao] 외래 키 ([Instituicao_Id]) 참조 [dbo]. [Instituicao] ([Id]) –