引用当前的RoleProvider实例?

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

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

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

静态Roles类上有一个Provider属性,可用于引用当前提供程序。

Roles.Provider 

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

 ((MyCustomRoleProvider)Roles.Provider).AllYourRoleAreBelongToUs();