猿问

关于linq to sql更新外键的问题,紧急求助!

在mvc2里,我用linq to sql,更新外键字段时总是不让我更新。具体如下:

用户表的角色ID(RoleID)字段是外键,关联角色表的主键RoleID,我更新用户信息时,更改其他字段的值都没有问题,就是RoleID的值更改时,会出现“对象的当前状态使该操作无效”的错误。代码如下:

public void UpdateUser(Users newuser){

User user=data.DataContext.Users.FirstOrDefault(u=>u.UserName==newuser.UserName);

if(user!=null)

{

  user.Sex=newuser.Sex;

  user.RoleID=newuser.RoleID;   //这一行就出现上面所说的错误了。

  ......(省略代码)

}

}

请高手帮忙指出出现错误的原因,以及解决的办法。谢谢!!


紫衣仙女
浏览 484回答 1
1回答

LEATH

user.role.ruleID=newuser.RoleID
随时随地看视频慕课网APP
我要回答