【问题标题】:ASPNETDB - How do I switch profile providers on the flyASPNETDB - 如何即时切换配置文件提供程序
【发布时间】:2011-10-31 01:24:06
【问题描述】:

我有一个使用 ASPNETDB 作为成员/角色/配置文件的网站。该网站有一些管理页面,我想添加几个新页面以便能够为该网站添加/编辑/删除用户。

我有两个不同的数据库连接字符串,具有不同的权限/安全级别。

我希望一个(“ASPNETDBConnection”)仅用于网站登录过程,以及所有访问者的其他一般用途。

我希望另一个(“ASPNETDBConnectionAdmin”)用于登录用户的添加/编辑/删除页面。

我不想创建虚拟目录/应用程序(不能 - 不要问!)。

我了解到,虽然我只能拥有一个个人资料,但我可以拥有多个提供者...

以下内容来自我当前的 web.config 文件:

<system.web>
    <membership defaultProvider="AspNetSqlMembershipProvider">
        <providers>
            <clear/>
            <add name="AspNetSqlMembershipProvider" connectionStringName="ASPNETDBConnection" applicationName="MyWebSite" type="System.Web.Security.SqlMembershipProvider, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" enablePasswordRetrieval="false" enablePasswordReset="true" requiresQuestionAndAnswer="true" requiresUniqueEmail="true" passwordFormat="Hashed" maxInvalidPasswordAttempts="5" minRequiredPasswordLength="6" minRequiredNonalphanumericCharacters="0" passwordAttemptWindow="10" passwordStrengthRegularExpression=""/>
            <add name="AspNetSqlMembershipProviderAdmin" connectionStringName="ASPNETDBConnectionAdmin" applicationName="MyWebSite" type="System.Web.Security.SqlMembershipProvider, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" enablePasswordRetrieval="false" enablePasswordReset="true" requiresQuestionAndAnswer="true" requiresUniqueEmail="true" passwordFormat="Hashed" maxInvalidPasswordAttempts="5" minRequiredPasswordLength="6" minRequiredNonalphanumericCharacters="0" passwordAttemptWindow="10" passwordStrengthRegularExpression=""/>
        </providers>
    </membership>
    <profile defaultProvider="AspNetSqlProfileProvider" enabled="true">
        <providers>
            <clear/>
            <add name="AspNetSqlProfileProvider" connectionStringName="ASPNETDBConnection" applicationName="MyWebSite" type="System.Web.Profile.SqlProfileProvider, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"/>
            <add name="AspNetSqlProfileProviderAdmin" connectionStringName="ASPNETDBConnectionAdmin" applicationName="MyWebSite" type="System.Web.Profile.SqlProfileProvider, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"/>
        </providers>
    </profile>
    <roleManager defaultProvider="AspNetSqlRoleProvider" enabled="true">
        <providers>
            <clear/>
            <add name="AspNetSqlRoleProvider" connectionStringName="ASPNETDBConnection" applicationName="MyWebSite" type="System.Web.Security.SqlRoleProvider, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"/>
            <add name="AspNetSqlRoleProviderAdmin" connectionStringName="ASPNETDBConnectionAdmin" applicationName="MyWebSite" type="System.Web.Security.SqlRoleProvider, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"/>
        </providers>
    </roleManager>
</system.web>

我的问题是,如何切换供应商?

如何在添加/编辑/用户页面的代码中将成员资格提供程序从默认的“AspNetSqlMembershipProvider”更改为替代选项“AspNetSqlMembershipProviderAdmin”(动态?)?

角色和个人资料提供者等。

请在 VB 中提供任何帮助,而不是 C#。

非常感谢... 蜉蝣

【问题讨论】:

    标签: membership profile provider aspnetdb


    【解决方案1】:

    Crimblepud

    我尝试搜索,甚至我尝试制作自定义分析器,但没有得到这个想法,在这之间我找到了一些有用的资源,检查它

    Code Project on Profile

    Profile Mechanism

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2010-09-18
      • 2019-09-21
      • 1970-01-01
      • 1970-01-01
      • 2023-04-01
      • 1970-01-01
      • 1970-01-01
      • 2012-02-16
      相关资源
      最近更新 更多