引用当前的RoleProvider实例?

Joh*_*n K 19 c# asp.net roleprovider

在ASP.NET页面,存在HttpContext的模块或处理程序内部时,如何获取对当前RoleProvider实例的引用?

它是在调用IPrincipal.IsInRole(..)方法时用于授权的提供程序.默认情况下,或者从配置,我的提供程序似乎是一个SqlRoleProvider实例,由我在运行应用程序时给出的错误.

我想在运行时检查提供程序的类型,以提供有关实际使用哪个提供程序的反馈.

Jos*_*osh 30

静态角色类上有一个Provider属性,你可以用它来引用当前提供商.

Roles.Provider
Run Code Online (Sandbox Code Playgroud)

如果您使用的是自定义RoleProvider,则可以将其强制转换以访问自定义功能.

((MyCustomRoleProvider)Roles.Provider).AllYourRoleAreBelongToUs();
Run Code Online (Sandbox Code Playgroud)

  • +1仅适用于"All Your Base ..."参考. (4认同)