c# – ASP.NET web.config中SQL Server本机客户端的连接字符串

我想从我的ASP.NET应用程序使用SQL Server本机客户端连接到SQL Server 2012.目前,我有一个现有的连接字符串连接使用odbc和工作正常.
<appSettings>
<add key="StagingConnect"
value="Integrated Security=True;Initial Catalog=Staging;Data Source=AUBDSG01.AUYA.NET\INST1"/>
</appSettings>
当我尝试如下时,代码抛出异常
<add key="StagingConnect"
value="Provider=SQLNCLI11;Integrated Security=True;Initial Catalog=Staging;Data Source=AUBDSG01.AUYA.NET\INST1"/>
例外:
System.Web.HttpUnhandledException (0x80004005): Exception of type ‘System.Web.HttpUnhandledException’ was thrown.
System.ArgumentException: Keyword not supported: ‘provider’.
at System.Data.Common.DbConnectionOptions.ParseInternal(Hashtable parsetable, String connectionString, Boolean buildChain, Hashtable synonyms, Boolean firstKey)
at System.Data.Common.DbConnectionOptions..ctor(String connectionString, Hashtable synonyms, Boolean useOdbcRules)
at System.Data.SqlClient.SqlConnectionString..ctor(String connectionString)
at System.Data.SqlClient.SqlConnectionFactory.CreateConnectionOptions(String connectionString, DbConnectionOptions previous)
at System.Data.ProviderBase.DbConnectionFactory
如何修改此连接字符串,以便它应通过SQL Server本机客户端11进行连接
解决方法:
由于我的连接字符串没有进入< appSettings>,因此不确定您之前是如何使用它的.它进入一个单独的< connectionStrings>部分. providerName是一个元素,不是字符串本身的一部分.
这是一个例子
<connectionStrings>
<clear />
<add name="xxx" providerName="System.Data.SqlClient" connectionString="Server=(local);Database=yyy;User=zzz;Password=123;MultipleActiveResultSets=True" />
</connectionStrings>
希望这可以帮助.