【问题标题】:.Net RoleProvider without the connectionString.Net RoleProvider 没有 connectionString
【发布时间】:2010-01-22 18:39:32
【问题描述】:

我想在我的应用程序中使用 .Net 的 SqlMembershipProvider 和 SqlRoleProvider 进行用户管理。我的问题是,当应用程序启动时,它不知道任何数据库连接信息。出于安全目的,它需要从数据库服务器上运行的 WCF 服务获取此信息。因此,我需要事后建立我的会员/角色提供者。

我想我已经能够创建和添加会员提供者了:

// register membership provider
var membership = new SqlMembershipProvider();
var providerValues = new NameValueCollection();
providerValues.Add("name", "sqlMembershipProvider");
providerValues.Add("applicationName", "/");
providerValues.Add("connectionStringName", "connectionStrDynamAddedToConfig");
providerValues.Add("maxInvalidPasswordAttempts", "10");
membership.Initialize("sqlMembershipProvider", providerValues);

到目前为止,我一直无法找到类似的方法来创建 RoleProvider。我可以创建提供程序,但不能将其添加到角色管理器。我是否需要创建一个自定义提供程序,在它已经初始化后可以接受一个连接字符串?

【问题讨论】:

    标签: asp.net-membership roleprovider


    【解决方案1】:

    我遇到了this page,它建议“下载ProviderToolkitSamples 并修改SQLConnectionHelper 类。具体来说,GetConnectionString 函数看起来像这样”

    internal static string GetConnectionString(string specifiedConnectionString, bool lookupConnectionString, bool appLevel)
    {
            if (specifiedConnectionString == null || specifiedConnectionString.Length < 1)
                return null;
    
            string connectionString = null;
    
            /////////////////////////////////////////
            // Step 1: Check <connectionStrings> config section for this connection string
            if (lookupConnectionString)
            {
                ConnectionStringSettings connObj = ConfigurationManager.ConnectionStrings[specifiedConnectionString];
                if (connObj != null)
                    connectionString = connObj.ConnectionString;
    
                if (connectionString == null)
                    return null;
            }
            else
            {
                connectionString = specifiedConnectionString;
            }
    
            return connectionString;
        }
    }
    

    文字来自 williablog.net,因为正如该页面所说,“链接会随着时间的推移而中断”

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2011-03-18
      • 2019-12-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-04-07
      • 1970-01-01
      相关资源
      最近更新 更多