在存在HttpContext的 ASP.NET 页面、模块或处理程序中时,如何获取对当前RoleProvider实例的引用?
它是调用IPrincipal.IsInRole(..)方法时用于授权的提供程序。默认情况下,或者从配置中,我的提供者似乎是一个SqlRoleProvider实例,因为我在运行应用程序时给出了一个错误。
我想在运行时检查提供程序的类型,以提供有关实际使用哪个提供程序的反馈。
在存在HttpContext的 ASP.NET 页面、模块或处理程序中时,如何获取对当前RoleProvider实例的引用?
它是调用IPrincipal.IsInRole(..)方法时用于授权的提供程序。默认情况下,或者从配置中,我的提供者似乎是一个SqlRoleProvider实例,因为我在运行应用程序时给出了一个错误。
我想在运行时检查提供程序的类型,以提供有关实际使用哪个提供程序的反馈。
静态 Roles 类上有一个 Provider 属性,您可以使用它来引用当前的提供者。
Roles.Provider
如果您使用的是自定义 RoleProvider,则可以强制转换它以访问自定义功能。
((MyCustomRoleProvider)Roles.Provider).AllYourRoleAreBelongToUs();