MembershipUser newUser = Membership.CreateUser(UsernameTextbox.Text, PasswordTextbox.Text);
在web.config中我有连接字符串,但我想在不同的连接字符串上使用MemBershipUser。这是可能的,如果是的话怎么样?
问候
答案 0 :(得分:1)
只需添加一个额外的连接字符串,并在您的成员资格配置中使用它。看看这个例子:http://msdn.microsoft.com/en-us/library/6e9y4s5t.aspx
如您所见,membership
部分按名称引用其连接字符串。
答案 1 :(得分:0)
如果其他人遇到类似问题,则找到解决方案:
一个更简单但有点令人费解的解决方案就是修改连接 在请求的生命周期中,提供者中的字符串足够早:
private void SetProviderConnectionString(string connectionString)
{
// Set private property of Membership, Role and Profile providers.
var connectionStringField = Membership.Provider.GetType().GetField("_sqlConnectionString", BindingFlags.Instance | BindingFlags.NonPublic);
if (connectionStringField != null)
connectionStringField.SetValue(Membership.Provider, connectionString);
var roleField = Roles.Provider.GetType().GetField("_sqlConnectionString", BindingFlags.Instance | BindingFlags.NonPublic);
if (roleField != null)
roleField.SetValue(Roles.Provider, connectionString);
var profileField = ProfileManager.Provider.GetType().GetField("_sqlConnectionString", BindingFlags.Instance | BindingFlags.NonPublic);
if (profileField != null)
profileField.SetValue(ProfileManager.Provider, connectionString);
}