实体框架4,POCO,WCF,多对多更新
我在实体框架POCO类中映射了多对多关系。在数据库中,它是一个带有复合键的联接表,POCO属性可以很好地生成 当我从上下文加载一个实体时,我可以从多对多集合中删除一个项,并且在保存更改时更新数据库 例如: var item=context.Items.First() item.OtherItems.Remove(item.OtherItems[0]) SaveChanges() 但是,当分离的对象图从WCF返回时,我将其附加到上下文并将其标记为已修改。但这些变化并没有持续下去 例如: //这在silverlight客户端上发生 item.OtherItems.Remove(item.OtherItems[0]) //在服务器上 上下文。项目。附加(项目) context.ObjectStateManager.ChangeObjectState(项,EntityState.Modified) SaveChanges()实体框架4,POCO,WCF,多对多更新,wcf,entity-framework,many-to-many,poco,Wcf,Entity Framework,Many To Many,Poco,我在实体框架POCO类中映射了多对多关系。在数据库中,它是一个带有复合键的联接表,POCO属性可以很好地生成 当我从上下文加载一个实体时,我可以从多对多集合中删除一个项,并且在保存更改时更新数据库 例如: var item=context.Items.First() item.OtherItems.Remove(item.OtherItems[0]) SaveChanges() 但是,当分离的对象图从WCF返回时,我将其附加到上下文并将其标记为已修改。但这些变化并没有持续下去 例如: //这在s
在这种情况下,不会从数据库中的联接表中删除该记录。你知道我该怎么做吗?非常感谢。更改对象状态将标记您的实体已修改。您需要使用
changelationshipstate
来标记两个实体之间已修改的关系-这将对联接表执行DB修改。您需要将关系的状态设置为“已添加”或“已删除”