ASP.NET角色提供程序不工作
本文关键字:程序 工作 NET 角色 ASP | 更新日期: 2023-09-27 17:59:51
所以我本质上是在开发一个遗留应用程序。我有一个登录页面,它可以工作,并在登录时根据用户角色重定向。。。到目前为止还不错。但是,当用户点击他们被重定向到的页面时,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");
}
哪个失败了。。。如果有人能发现正在发生的事情,我将不胜感激。我(不用说)看不出这个问题,更令人恼火的是,这些是其他成功运营的项目的片段。
由于MemorshipProvider是SqlMembershipProvider,因此您希望使用SqlRoleProvider>来代替>WindowsTokenRoleProvider。
<roleManager enabled="true" defaultProvider="AspNetSqlRoleProvider">
<providers>
<clear/>
<add connectionStringName="ApplicationServices"
applicationName="/"
name="AspNetSqlRoleProvider"
type="System.Web.Security.SqlRoleProvider, System.Web"/>
</providers>
</roleManager>