更改UserName后找不到成员资格用户

时间:2011-01-15 21:42:14

标签: asp.net membership roles

如果你知道如何,请帮助。

我正在使用成员资格但允许更改指定用户的UserName。 我将名为Customer的用户绑定到角色Customer,然后将其用户名更改为123。 然后我尝试做一些事来获得该用户的角色并获得错误或空结果。

Roles.RemoveUserFromRoles(UserName, Roles.GetAllRoles()); // get exception - user 123 does not exist
String[] userRoles = Roles.GetRolesForUser(UserName); // returns String[]{0}

然后我转到IIS管理器面板,看到所选角色仍然重命名了用户,但重命名的用户未添加到任何角色。 数据库表UserInRoles(设置用户和角色之间的链接)具有相关记录,所有UserID和RoleID都是正确的。

所以我不明白数据库中的所有链接是否都在ID中连接,为什么在我更改UserName之后这个链接被破坏了?

我将不胜感激任何帮助,建议和信息。

谢谢,艺术

1 个答案:

答案 0 :(得分:0)

嗯,会员资格很糟糕 - 这是我永远不会在任何项目中使用它的答案。这就是答案。

上述问题的解决方法是创建自己的方法来按ID编辑用户。