0

我在 webconfig 中有这个

<add name="dbConn" connectionString="Data Source=PC-PC;Integrated Security=True" />

然后我大部分时间在我的页面中通过

 string connstr = ConfigurationManager.ConnectionStrings["dbConn"].ConnectionString;

但是,某些页面需要两个查询。我的想法是(或我想要实现的)

 string connstr = ConfigurationManager.ConnectionStrings["dbConn"+"MultipleActiveResultSets=True"].ConnectionString;

但它当然行不通。因为这里所说的就像下面的代码。

脚注:我不想在我的大部分页面中使用它

string connectionString = "Data Source=MSSQL1;" + 
        "Initial Catalog=AdventureWorks;Integrated Security=SSPI;" +
        "MultipleActiveResultSets=True";

因为我有多个页面,当然要轻松设置数据库。
脚注2:原因是因为我不知道它可能不健壮并且在只需要1个连接的页面中使用2个连接可能很难看。
编辑:抱歉英语不好

4

2 回答 2

1

您的场景可以有两个连接:

没有MultipleActiveResultSets=True,

<add name="dbConn1" connectionString="Data Source=PC-PC;Integrated Security=True" />

MultipleActiveResultSets=True,

<add name="dbConn2" connectionString="Data Source=MSSQL1; 
        Initial Catalog=AdventureWorks;Integrated Security=SSPI;
        MultipleActiveResultSets=True;" />

您可以根据您的要求加载上述连接字符串。

于 2017-01-30T02:33:54.437 回答
0

在SqlConnectionStringBuilder中加载连接字符串,操作builder,然后调用ToString()获取操作后的连接字符串:

string webConfigConnectionString = ConfigurationManager.ConnectionStrings["dbConn"].ConnectionString;
var builder = new System.Data.SqlClient.SqlConnectionStringBuilder(webConfigConnectionString);
builder.MultipleActiveResultSets = true;
string modifiedConnectionString = builder.ToString();
于 2017-01-30T02:32:42.850 回答