Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/304.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 复选框MVC 5角色_C#_Asp.net_Asp.net Mvc_Checkbox - Fatal编程技术网

C# 复选框MVC 5角色

C# 复选框MVC 5角色,c#,asp.net,asp.net-mvc,checkbox,C#,Asp.net,Asp.net Mvc,Checkbox,我知道这个问题可能已经有了答案,但问题是我真的找不到合适的解决办法。所以我有一个MVC应用程序,它有一个用户和角色数据库。我需要创建视图,其中将是用户ID和他的角色在复选框中,如果他有角色,复选框将明显选中。我希望你抓住了我。通过分离角色表和用户表的方式,只有UserID是相同的 数据库中的角色 模型 public class UserRoleModel { public int ID { get; set; } public int UserID { get; set; }

我知道这个问题可能已经有了答案,但问题是我真的找不到合适的解决办法。所以我有一个MVC应用程序,它有一个用户和角色数据库。我需要创建视图,其中将是用户ID和他的角色在复选框中,如果他有角色,复选框将明显选中。我希望你抓住了我。通过分离角色表和用户表的方式,只有UserID是相同的

数据库中的角色

模型

public class UserRoleModel
{
    public int ID { get; set; }

    public int UserID { get; set; }
    public List<RoleModel> ListRole {get; set;}
    public bool Administrator { get; set; }
    public bool Gestor { get; set; }
    public bool Supervisor { get; set; }
    public bool SecurityManager { get; set; }

}

public class RoleModel

{
    public string Name {get; set;}
}
这是视图的一部分,我需要使用foreach,我知道这只给了我userid1023角色所在的文本。所以它只写“管理员”,其他什么都不写

@foreach(var item in Model.ListRole)

     {

           @Html.EditorFor(x => x.ListRole)

     }

感谢您的帮助,是的,我对MVC和编程一无所知。

您知道角色是什么,它们会被修复吗?拥有一个具有4个bool属性的用户模型不是很灵活-如果以后添加或删除角色会发生什么情况。我想这样的东西会更合适一个好的@StephenMuecke!永恒的答案!我在这个问题/答案和它的方式上做得更好,但它只显示用户拥有的角色和未选中的角色:/I我需要显示所有角色和必须显示的角色checked@shad0wec,在链接的答案中,您需要首先使用数据库中的所有角色填充
角色
属性,然后根据特定的用户角色,您可以根据需要设置
IsSelected
属性。如果您遇到问题,请使用您尝试过的代码提出新问题,我们将帮助您。
@foreach(var item in Model.ListRole)

     {

           @Html.EditorFor(x => x.ListRole)

     }