我有以下课程
public class ObjectA{
private List<ObjectB> list;
}
ObjectA
并且ObjectB
处于 N:N 关系。
我只想删除关系并使用
while (objectA.list.Any())
objectA.list.Remove(objectA.list.First());
列表是关系表 -
List<ObjectAobjectB>
我得到
操作失败:无法更改关系,因为一个或多个外键属性不可为空。当对关系进行更改时,相关的外键属性将设置为空值。如果外键不支持空值,则必须定义新的关系,必须为外键属性分配另一个非空值,或者必须删除不相关的对象。
编辑:更新模型定义
我的模型中有三个表:
* ClassA - SchemaA,
* ClassAClassB - SchemaA,
* ClassB - SchemaB,
在我的上下文(和 edmx)中,我只有模式 A(ClassA 和 ClassAClassB)
,因为它与关系表是 1:N。
这是从 edmx 生成的代码。
public partial class ClassA:DomainEntity
{
....
public virtual ICollection<ClassB> ClassAClassB { get; set; }
}
我究竟做错了什么?
谢谢。