【问题标题】:How to set Password and Username in web.config如何在 web.config 中设置密码和用户名
【发布时间】:2015-04-29 11:32:26
【问题描述】:

在我的 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 类应该为此提供一个属性,但我找不到任何东西。谁能给我解释一下怎么做?

【问题讨论】:

标签: asp.net-mvc security web-config


【解决方案1】:

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

<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

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-05-07
    • 2012-07-11
    • 1970-01-01
    • 1970-01-01
    • 2013-10-20
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多