4

我的模型中有两个对象

汽车和汽车零件

具有 1:n 的关系。

我想删除级联实体汽车。当我删除时,我得到以下异常:

 The operation failed: The relationship could not be changed because one or 
 more of the foreign-key properties is non-nullable. When a change is made 
 to a relationship, the related foreign-key property is set to a null value. 
 If the foreign-key does not support null values, a new relationship must 
 be defined, the foreign-key property must be assigned another non-null value, 
 or the unrelated object must be deleted.

我认为它试图先删除汽车对象,然后再删除汽车零件。
由于外键,这是不可能的。

我该如何处理?
我想,显然先删除 carPart,然后只删除汽车。
谢谢。

4

2 回答 2

6

您需要告诉数据库您要在删除时级联,然后 Entity Framework 将执行您所期望的操作。如果您转到RelationshipsSQL Server Management Studio 中表的屏幕,则可以更改 FK 行为:

Sql Server Management Studio 中的级联删除

于 2012-11-22T10:52:04.157 回答
1

如果要级联删除,请在数据库级别设置级联删除。您收到错误,因为SQL不允许删除。

您不必在实体框架中执行此操作。

于 2012-11-22T10:47:27.090 回答