在建立與服務(wù)器的連接時(shí)出錯(cuò)。在連接到 SQL Server 2005 時(shí),在默認(rèn)的設(shè)置下 SQL Server 不允許進(jìn)行遠(yuǎn)程連接可能會(huì)導(dǎo)致此失敗。 (provider: 命名管道提供程序, error: 40 - 無(wú)法打開到 SQL Server 的連接)
解決方法:
你可能連接的數(shù)據(jù)庫(kù)是SQL Server 2005 Express Edition,從"開始菜單"調(diào)出"配置工具"中的"SQL Server 外圍應(yīng)用配置器".然后單擊"服務(wù)和連接外圍應(yīng)用配置器",選擇數(shù)據(jù)庫(kù)實(shí)例(默認(rèn)是"SQLEXPRESS",選擇database Engine的"遠(yuǎn)程連接"中的"本地連接和遠(yuǎn)程連接(用TCP/IP)",這樣即可打開SQL Server 2005的遠(yuǎn)程連接(默認(rèn)不允許).
其實(shí)你可以
配置文件:
<connectionStrings>
<add name="testDBConnectionString" connectionString="Data Source=.\SQLEXPRESS;AttachDbFilename=D:\wwwroot\sszTest1\App_Data\testDB.mdf;Integrated Security=True;Connect Timeout=30;User Instance=True" providerName="System.Data.SqlClient"/>
</connectionStrings>
程序調(diào)用時(shí):
SqlConnection sqlCon = new SqlConnection(System.Configuration.ConfigurationSettings.AppSettings["testDBConnectionString"].ToString());//testDBConnectionString
或都直接生成connection(注意這里SQLEXPRESS前變成了“\\”,而不是“\”):
SqlConnection sqlCon = new SqlConnection("Data Source=.\\SQLEXPRESS;AttachDbFilename=D:\\wwwroot\\sszTest1\\App_Data\\testDB.mdf;Integrated Security=True;Connect Timeout=30;User Instance=True")
只要連接成功,你再生成DataSource應(yīng)該不成問題.