我有一个实体框架4.0,带有poco对象。 edmx模型文件是从数据库中生成的。保存与两个实体之间的关系N-N关联
这DataContext的是通过WCF服务访问,它只是意味着我得到了一些对象,我需要将它们附加到当前的DataContext(或与键对应关系重新加载)。
一切似乎都做工精细,除了一种情况:
我有两条表之间的关系NN,所以我的关联表,不超过两个表的ID其他任何领域:
LINQ将其转换为以下模式,这似乎是正确的。
当我检索数据时,没有问题,我自己插入到Right_group中的数据正确转换为“我的权限/组中的新对象”。
但是,如果我尝试修改的东西和保存,这是行不通的
public void SaveRights(Group group, List<Rights> rights){
//here, group and rights are objects attached to the database
group.Rights.Clear();
group.Rights.AddRange(rights);
_dataContext.SaveChanges();
}
所以我的问题是:如何保存这两个对象的“关系”? 谢谢!
**不起作用**不是意外行为的最佳描述。那么如果执行SaveChanges会发生什么?通过附加到数据库,你的意思是你已经将它们加载到_dataContext的同一个实例上? – 2011-02-17 08:34:14
对不起,SaveChanges()完成时,数据不会保存在数据库中。我的意思是,当我发送对象到WCF端时,我分离了我的datacontext的对象,并且它们不再被跟踪。所以当我再次进入我的服务器时,我需要附加这些属性并应用更改 – J4N 2011-02-19 07:31:54