角色& # 39;& # 39;没有找到
本文关键字:角色 | 更新日期: 2023-09-27 18:15:50
我在mvc 4应用程序中添加新角色…但每次它给出Error
这是我的寄存器方法
//
// POST: /Account/Register
[AllowAnonymous]
[HttpPost]
public ActionResult Register(RegisterModel model)
{
if (ModelState.IsValid)
{
object x = Membership.GetUser(model.UserName);
if (Membership.GetUser(model.UserName) == null)
{
// Attempt to register the user
MembershipCreateStatus createStatus;
Membership.CreateUser(model.UserName, model.Password, model.Email, null, null, true, null,
out createStatus);
if (createStatus == MembershipCreateStatus.Success)
{
Roles.AddUserToRole(model.UserName, model.Role);
//model.Role is the DropDown Selected Text.. its value is 'Admin'
FormsAuthentication.SetAuthCookie(model.UserName,
false /* createPersistentCookie */);
return RedirectToAction("Index", "EUT");
}
else
{
ModelState.AddModelError("",
ErrorCodeToString(createStatus));
}
}
else
{
ModelState.AddModelError("", "User Already exists");
}
}
// If we got this far, something failed, redisplay form
return View(model);
}
在我的Web配置
<membership>
<providers>
<clear/>
<add name="AspNetSqlMembershipProvider" type="System.Web.Security.SqlMembershipProvider" connectionStringName="ApplicationServices"
enablePasswordRetrieval="false" enablePasswordReset="true" requiresQuestionAndAnswer="false" requiresUniqueEmail="false"
maxInvalidPasswordAttempts="5" minRequiredPasswordLength="6" minRequiredNonalphanumericCharacters="0" passwordAttemptWindow="10"
applicationName="/" />
</providers>
</membership>
<profile>
<providers>
<clear/>
<add name="AspNetSqlProfileProvider" type="System.Web.Profile.SqlProfileProvider" connectionStringName="ApplicationServices" applicationName="/" />
</providers>
</profile>
<roleManager enabled="true" defaultProvider="AspNetSqlRoleProvider"
cacheRolesInCookie="true"
cookieName=".myroles"
cookieTimeout="30"
cookieSlidingExpiration="true"
cookieProtection="All">
<providers>
<clear/>
<add name="AspNetSqlRoleProvider" type="System.Web.Security.SqlRoleProvider" connectionStringName="ApplicationServices" applicationName="/" />
<add name="AspNetWindowsTokenRoleProvider" type="System.Web.Security.WindowsTokenRoleProvider" applicationName="/" />
</providers>
</roleManager>
我看到过类似的帖子:
在注册(表单认证)MVC3上添加用户角色
注册字符串时向角色添加用户失败。净MVC3
只添加角色
在尝试绑定选定的值与模型属性…
任何建议都会有帮助
您可以检查该角色是否存在,如果不存在则添加该角色:
var adminRoleExists = Roles.RoleExists(AppRoles.Admin.ToString());
if (!adminRoleExists)
{
Roles.CreateRole(AppRoles.Admin.ToString());
}