2011-03-30 53 views
43

我們使用ASP.NET(Framework 2)並在web.config中設置數據庫連接字符串(SQL2005)。web.config中的SQL providerName

我們正在使用「providerName=SqlServer」。

我們所有的數據訪問均使用System.Data.SqlClient完成 - 因此我們應該更改爲providerName=System.Data.SqlClient?我在網上找到了這個providerName的許多例子,但很少解釋providerName = SqlServer的實際含義。

有區別嗎?我擔心我們當前指定的providerName實際上是引用了一個遺留的(也許是較慢的)客戶端,或者是否有一個比SqlClient更有效的客戶端來用於ASP.NET?

回答

85

System.Data.SqlClient是SQL Server的.NET Framework數據提供程序。即用於SQL Server的.NET庫。我不知道providerName=SqlServer來自哪裏。您能否在連接字符串中將提供者關鍵字混淆? (我知道我是:))

在web.config中,您應該有System.Data.SqlClient作爲providerName屬性的值。它是您正在使用的.NET Framework數據提供程序。

<connectionStrings> 
    <add 
     name="LocalSqlServer" 
     connectionString="data source=.\SQLEXPRESS;Integrated Security=SSPI;AttachDBFilename=|DataDirectory|aspnetdb.mdf;User Instance=true" 
     providerName="System.Data.SqlClient" 
    /> 
</connectionStrings> 

http://msdn.microsoft.com/en-US/library/htw9h4z3(v=VS.80).aspx

+0

感謝您的幫助和參考! – Ali 2011-03-30 11:50:50

0
WebConfigurationManager.ConnectionStrings["YourConnectionString"].ProviderName;