Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/339.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/22.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# 创建自定义角色mvc3_C#_.net_Asp.net Mvc 3 - Fatal编程技术网

C# 创建自定义角色mvc3

C# 创建自定义角色mvc3,c#,.net,asp.net-mvc-3,C#,.net,Asp.net Mvc 3,我正在创建一个MVC3应用程序,其中的用户可以是管理员,也可以是数据条目,因此我需要利用MVC提供的用户身份验证中的角色。因此,在我的登记表中,我添加了 <%= Html.DropDownList("RoleName", new SelectListItem[]{ new SelectListItem{ Text= "Admin", Va

我正在创建一个MVC3应用程序,其中的用户可以是管理员,也可以是数据条目,因此我需要利用MVC提供的用户身份验证中的角色。因此,在我的登记表中,我添加了

                    <%=  
                           Html.DropDownList("RoleName", new SelectListItem[]{ 
                           new SelectListItem{ Text= "Admin", Value="admin"},
                           new SelectListItem{ Text= "Data Entry", Value="data"}
                    }) %>
现在,当我注册时,出现以下错误: 找不到角色“”


谢谢…

请查看
角色的定义。AddUserToRole()
方法。您正在为第二个参数硬编码“RoleName”,该参数假定是要添加用户的角色


您要做的是从
下拉列表中检索所选的值,并在
角色中使用该字符串。AddUserToRole()
方法调用。

,因为您没有名为“RoleName”的角色。你需要编写你的方法来获取dropdownlist中的角色。是的,这就是我做错的地方。我假设roleName是下拉列表的名称,而没有首先将其解析为字符串。。。
if (createStatus == MembershipCreateStatus.Success)
                {
                    Roles.AddUserToRole(model.UserName, "RoleName");
                    FormsAuthentication.SetAuthCookie(model.UserName, false /* createPersistentCookie */);
                    return RedirectToAction("Index", "Home");
                }