Entity framework 实体框架在更新时在两个现有对象之间插入多对多关系
我正在尝试这样做:Entity framework 实体框架在更新时在两个现有对象之间插入多对多关系,entity-framework,insert,many-to-many,Entity Framework,Insert,Many To Many,我正在尝试这样做: using(var context = new SampleEntities()) { User user = select a user from database; //Update user's properties user.Username = ... user.Website = ... //Add a role Role role = select a role from database
using(var context = new SampleEntities())
{
User user = select a user from database;
//Update user's properties
user.Username = ...
user.Website = ...
//Add a role
Role role = select a role from database
//trying to insert into table UserRoles which has columns (UserID, RoleID)
user.Roles.Add(role);
//Apply property changes
context.ApplyPropertyChanges("Users", user);
context.SaveChanges();
}
但是,我得到一个异常,告诉我“ObjectContext中的现有对象处于添加状态”,不能“ApplyPropertyChanges”。
如果删除了“ApplyPropertyChanges()”,则会添加一个用户
这些方法的调用顺序是什么?我不需要分开做,对吗?
谢谢。在我看来,您的用户对象并不是分离的,所以您不需要调用
ApplyPropertyChanges()
@redbluegreen如果您找到了问题的答案,请发布它,以便其他人可以受益。