2013-10-21 58 views
2

我具有使WebSecurity.InitializeDatabaseConnection和ServiceConfiguration,天青

WebSecurity.InitializeDatabaseConnection(string connectionStringName, string userTableName, string userIdColumn, string userNameColumn, bool autoCreateTables) 

與ServiceConfiguration被配置問題。在窗口天青[ENV]。

的問題是,WebSecurity.InitializeDatabaseConnection需要串的connectionStringName而當我的connectionStringName IM傳遞的InitializeDatabaseConnection方法只查找在web.config中爲相應的值。

我知道如何得到的connectionStringName ConnectionString中,我可以使用

var connectionString = CloudConfigurationManager.GetSetting("connectionStringName"); 

但儘管如此,InitializeDatabaseConnection需要論證的connectionStringName,而不是的ConnectionString,因此我需要它在ServiceConfiguration仰望查找給定參數(connectionStringName)的相應值。

所以我的問題是: 是否有可能使用ServiceConfiguration [ENV] .cscfg爲WebSecurity.InitializeDatabaseConnection,讓它ServiceConfiguration查找從給定的名稱價值? 如果是這樣,如何使它工作?

+0

CloudConfigurationManager.GetSetting將默認如果值ISN到we.config在ServiceConfiguration中。[env] .cscfg - 嘗試使用web.config中的connectionStringName。 – viperguynaz

回答

2

您需要使用的InitializeDatabaseConnection其他過載和傳遞提供者名稱:

public static void InitializeDatabaseConnection(
      string connectionString, 
      string providerName, 
      string userTableName, 
      string userIdColumn, 
      string userNameColumn, 
      bool autoCreateTables) 

例如:

WebSecurity.InitializeDatabaseConnection(RoleEnvironment.GetConfigurationSettingValue("connectionStringName"), "System.Data.SqlClient", "UserProfile", "UserId", "UserName", true);