c#MVC:如何更新用户角色?

时间:2013-06-10 15:10:51

标签: c# asp.net-mvc user-roles

我有一个viewmodel,它暴露了一些     public virtual ICollection Roles {get;组; }

这对于恢复用户所属的角色非常有用。但是如何从表单中更新用户的角色。

为了测试,我尝试添加一个名为“Roles”的隐藏字段并输入“Admin”和它的GUID作为发送回服务器的值:

<input type="hidden" name="Roles" value="Admin" />
<input type="hidden" name="Roles" value="7feab829-b86c-4a94-90bf-f35e9ce04b01" />

Howver,当传递到服务器时,我可以看到这种方式创建了一个无效的模型状态 - 任何建议都将非常感谢!

1 个答案:

答案 0 :(得分:0)

根据您的意见,我看到了一些简单明了的解决方案。首先,删除隐藏的输入字段。那些不会给你买任何东西,只会在你去验证模型时伤到你

  1. 利用角色的下拉列表并将其传回模型。值应该是选择。
  2. 将它们作为字符串传递并在控制器中解析,如您所述
  3. 使用径向选项,每个选项都有唯一的ID。传递ID并将该ID与控制器中的值对应。
  4. 在控制器中,你是完全正确的。获取角色并调用Roles.AddUserToRole()。

    我认为你已经走上了正确的道路:)。