如何在 web.config 中设置密码和用户名

How to set Password and Username in web.config

在我的 MVC 应用程序中,我使用的连接字符串是通过

在 Web.config 中设置的
Private connectionString As String = ConfigurationManager.ConnectionStrings("DBCS").ConnectionString

我的数据库连接没有问题。但是由于我需要密码和用户名才能登录我的数据库,所以我将其硬编码在 web.config

<connectionStrings>
    <add name="DBCS" connectionString="server=win\SQLExpress;database=myDb; uid=myUsername;password=myPassword" providerName="System.Data.SqlClient" />
  </connectionStrings>

我正在寻找一种将密码和用户名从用户界面发送到 config.web 文件的方法,我认为 ConfigurationManager Class 应该为此提供一个 属性 但是我找不到东西。任何人都可以向我解释如何执行此操作吗?

您可以在应用设置中保存此值:

<appSettings>
  <add key="DBCS" value="Data Source=win\SQLExpress;Initial Catalog=myDb;User ID={0};Password={1}" />
</appSettings>

然后执行以下操作:

using System.Data.SqlClient; 


  public void DoDatabaseOperations(string _Username, string _Password)
  {
    string connetionString = null;
    SqlConnection cnn ;
    connetionString = string.Format(ConfigurationManager.AppSettings("DBCS"), _Username, _Password);
    cnn = new SqlConnection(connetionString);
    try
    {
        cnn.Open();

        // your code here

        cnn.Close();
    }
    catch (Exception ex)
    {
        // handle exception
    }
  }

VB.NET 等价于:

Imports System.Data.SqlClient

Public Sub DoDatabaseOperations(_Username As String, _Password As String)
    Dim connetionString As String = Nothing
    Dim cnn As SqlConnection
    connetionString = String.Format(ConfigurationManager.AppSettings("DBCS"), _Username, _Password)
    cnn = New SqlConnection(connetionString)
    Try
        cnn.Open()

        ' your code here

        cnn.Close()
            ' handle exception
    Catch ex As Exception
    End Try
End Sub