asp.net – MembershipProvider在代码中更改连接字符串

前端之家收集整理的这篇文章主要介绍了asp.net – MembershipProvider在代码中更改连接字符串前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我想在我的网站上实现 Asp.net Forms身份验证.通常,您在web.config中提供数据库连接字符串的名称.但是,由于我们的数据库设置稍微复杂一些,我一直在寻找一种方法来手动为MembershipProvider提供代码中的连接字符串.

谢谢!

解决方法

您不必为sqlMembershipProvider使用connectionStringName,而是可以直接提供连接字符串.即代替:
<membership defaultProvider="sqlProvider" ...>
  <providers>
    <add name="sqlProvider" type="System.Web.Security.sqlMembershipProvider"
         connectionStringName="MyConnectionStringName" 
         .../>
  </providers>
</membership>

您可以直接指定连接字符串:

<membership defaultProvider="sqlProvider" ...>
  <providers>
    <add name="sqlProvider" type="System.Web.Security.sqlMembershipProvider"
         connectionString="data source=... " 
         .../>
  </providers>
</membership>

因此,您还可以从sqlMembershipProvider派生自定义提供程序,并按如下方式动态构建连接字符串:

public class MysqLMembershipProvider : sqlMembershipProvider
{
    public override void Initialize(string name,NameValueCollection config)
    {
        config["connectionString"] = BuildMyCustomConnectionString();
        base.Initialize(name,config);
    }
}

猜你在找的asp.Net相关文章