gpt4 book ai didi

asp.net - 为什么没有为我的自定义角色提供程序设置应用程序名称?

转载 作者:行者123 更新时间:2023-12-02 10:09:38 25 4
gpt4 key购买 nike

我已经为 ASP.NET 应用程序实现了自定义角色提供程序。我从 System.Web.Security.RoleProvider 派生了我的类并实现了所有抽象方法和属性。我正在 web.config 中使用 applicationName 配置我的提供程序,如下:

 <roleManager enabled="true" defaultProvider="CustomRoleProvider">
<providers>
<clear/>
<add name="CustomRoleProvider" type="MvcApplication1.CustomRoleProvider" applicationName="Foo"/>
</providers>
</roleManager>

但是,我的提供程序的 ApplicationName 属性并未进行相应设置。为什么?

最佳答案

除了实现 System.Web.Security.RoleProvider 中的抽象方法之外,您还需要重写 Initialize() 方法。 web.config 中的提供程序元素中不由 System.Configuration.ProviderSettings 处理的属性(例如 applicationName)将通过 Initialize() 传递给自定义角色提供程序。将以下内容添加到 Initialize() 的实现中会将自定义角色提供程序的 ApplicationName 属性设置为 web.config 中的 applicationName 属性提供的值:

   if (config["applicationName"] != null)
ApplicationName = config["applicationName"];

关于asp.net - 为什么没有为我的自定义角色提供程序设置应用程序名称?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11000737/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com