加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

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

发布时间:2020-12-16 04:20:13 所属栏目:asp.Net 来源:网络整理
导读:我想在我的网站上实现 Asp.net Forms身份验证.通常,您在web.config中提供数据库连接字符串的名称.但是,由于我们的数据库设置稍微复杂一些,我一直在寻找一种方法来手动为MembershipProvider提供代码中的连接字符串. 谢谢! 解决方法 您不必为SqlMembershipPro
我想在我的网站上实现 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);
    }
}

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读