asp.net-mvc - 如何在 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 类应该为此提供一个属性,但我找不到任何东西。任何人都可以向我解释如何执行此操作吗?

最佳答案

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

<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

https://stackoverflow.com/questions/29942458/

相关文章:

r - 如何只保留 R 中 4 个数据帧之间的公共(public)行名?

.net - Nuget - 无法解析以前可以解析的包

java - String.split() 如果在字符串的最后部分,则忽略定界符之间的空值

PHP - 如何获取 n 深多维数组的所有数组值?

bash - ANSI 转义在 `printf` 中不起作用

python - 列出目录中的所有文件 - 按大小过滤

erlang - 执行Erlang脚本时抛出"init terminating in do_boot

c# - 在 C# 中实现 jaccard 相似度

java - 接口(interface)是否被视为对象?

python - 类型错误 : key is not