繁体   English   中英

ASP.NET角色提供程序不起作用

[英]ASP.NET Role Provider not working

所以我实际上是在开发旧版应用程序。 我有一个登录页面,该页面可以正常工作,并根据登录时的用户角色进行重定向……到目前为止,一切都很好。 但是,当用户点击重定向到的页面时,IsInRole方法没有任何作用,并将其重定向到登录页面。

在登录页面上,我有:

if (Membership.ValidateUser(nameTest, passwordLogIn.Text))
{
    if (Roles.IsUserInRole(nameTest, "Admin"))
        Response.Redirect("/admin.aspx");
    else if (Roles.IsUserInRole(nameTest, "Manager"))
        Response.Redirect("/admin.aspx");
    else if (Roles.IsUserInRole(nameTest, "User"))
        Response.Redirect("/mydonations.aspx");
}

哪个很好用...

在管理页面中,我有:

if (!(User.IsInRole("Admin") || (User.IsInRole("Manager"))))
{
   Response.Redirect("/Default.aspx");
}

失败了...如果有人可以发现正在发生的事情,我将不胜感激。 我(不用说)看不到问题,更让人气愤的是其他成功运行的项目的摘要。

由于MemhershipProviderSqlMembershipProvider的 ,你要使用SqlRoleProviderRoleProvider而不是WindowsTokenRoleProvider。

<roleManager enabled="true" defaultProvider="AspNetSqlRoleProvider">
  <providers>
    <clear/>
      <add connectionStringName="ApplicationServices" 
        applicationName="/" 
        name="AspNetSqlRoleProvider" 
        type="System.Web.Security.SqlRoleProvider, System.Web"/>
  </providers>
</roleManager>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM