使用asp.net身份创建我自己的角色逻辑的最佳方法是什么?
基本上,我想做的是向boolean
表中添加一个名为Active
的{{1}}(bit)列,并且仅匹配设置了AspNetUserRoles
列的那些角色真实。
到目前为止我尝试过的事情:
创建了自己的Active
:
RoleProvider
并将其添加到web.config:
public class MyCustomRoleProvier: System.Web.Security.SqlRoleProvider
{
public override string[] GetRolesForUser(string username)
{
return base.GetRolesForUser(username);
}
public override string[] GetUsersInRole(string roleName)
{
return base.GetUsersInRole(roleName);
}
}
现在,我不确定这种方法是否行得通,所以我基本上是在自己的提供程序中调用基本函数,并且<system.web>
<roleManager enabled="true" defaultProvider="myRoleProvider">
<providers>
<clear/>
<add name="myRoleProvider" type="myNamespace.MyCustomRoleProvier" connectionStringName="myConnectionString"/>
</providers>
</roleManager>
</system.web>
会引发以下错误:
return base.GetRolesForUser(username);
我不想创建一个全新的RoleProvider,我认为我唯一需要修改的就是Could not find stored procedure 'dbo.aspnet_CheckSchemaVersion'.
和GetRolesForUser
函数。
有没有更好的方法来实现我想要的?