我有问题
WebSecurity.InitializeDatabaseConnection(string connectionStringName, string userTableName, string userIdColumn, string userNameColumn, bool autoCreateTables)
在Windows Azure中配置ServiceConfiguration。[env]。
问题是 WebSecurity.InitializeDatabaseConnection 采用字符串connectionStringName ,当我在 connectionStringName 中传递 InitializeDatabaseConnection 方法它只在web.config中查找相应的值。
我知道如何从connectionStringName获取connectionstring,我可以使用
var connectionString = CloudConfigurationManager.GetSetting("connectionStringName");
但是, InitializeDatabaseConnection 需要参数 connectionStringName 而不是 connectionString ,因此我需要它在ServiceConfiguration中查找相应的值来查找给定参数(connectionStringName)。
所以我的问题是: 是否可以使用ServiceConfiguration。[env] .cscfg for WebSecurity.InitializeDatabaseConnection并让它在给定名称的ServiceConfiguration中查找值? 如果是这样,如何使其有效?
答案 0 :(得分: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);