更改成员连接字符串

Gow*_*nSS 7 .net c# connection-string sqlmembershipprovider

我是asp.net会员新手,我需要帮助以编程方式更改其连接字符串.

我到现在为止尝试的是

我已经创建了一个类项目名称Sample作为名称空间**并扩展了 System.Web.Security.SqlMembershipProvider

代码为

namespace Sample
{
    public class Connectionstring : SqlMembershipProvider
    {
        public override void Initialize(string name, System.Collections.Specialized.NameValueCollection config)
        {
            string connectionString = "server=xx.xx.xx;database=db;user id=un;password=pwd";    

           // Set private property of Membership provider.  
           FieldInfo connectionStringField = GetType().BaseType
                     .GetField("_sqlConnectionString", BindingFlags.Instance |
                                                       BindingFlags.NonPublic);
           connectionStringField.SetValue(this, connectionString);
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

并将成员标记中的Web配置文件更改为

<membership defaultProvider="SQLMembershipProvider">
  <providers>
    <add name="SQLMembershipProvider" type="sample.Connectionstring,sample" connectionStringName="SQLMembershipConnString" applicationName="@@@@@@@" enablePasswordRetrieval="false" enablePasswordReset="true" requiresQuestionAndAnswer="false" requiresUniqueEmail="false" passwordFormat="Hashed" />
  </providers>
</membership>
Run Code Online (Sandbox Code Playgroud)

并且在运行Web应用程序项目时,我正在更改的连接字符串不会被更改?

等待您的宝贵回复和评论

小智 1

您出于什么原因不在 Web 配置中使用连接字符串?

通常,Web 服务器将使用 Web 服务器的凭据(而不是单个用户的凭据)访问数据库。

这是 ASP.NET 身份验证的通用设置指南。 http://vstudiojourney.blogspot.com/2008/06/choosing-another-database-for.html