2009-09-08 48 views
1

我在Web服務器上有兩個ASP.NET網站,還有兩個SQL Server數據庫。錯誤:40 - 無法打開連接到SQL Server - 只在登臺網站上

我有一個網站#1的文件夾,它包含一個帶有指向數據庫#1的連接字符串的web.config。

在網站#1的文件夾下有一個名爲'staging'的臨時文件夾,其中包含網站#2,並且web.config中有一個指向數據庫#2的連接字符串。

網站#1完美運作。

但是當我嘗試運行網站2,我總是得到以下錯誤:

A network-related or instance-specific error occurred while establishing a connection to SQL Server. The server was not found or was not accessible. Verify that the instance name is correct and that SQL Server is configured to allow remote connections. (provider: Named Pipes Provider, error: 40 - Could not open a connection to SQL Server)

我已驗證連接字符串是正確的,它指向數據庫#2。

但即使當我交換來自網站#1的連接字符串時,它在網站1上完美工作,它仍然失敗。

下面是連接字符串的樣子:

<connectionStrings> 
    <add name="WebsiteConnectionString" connectionString="Data Source=localhost;Initial Catalog=WebsiteStaging;User Instance = false;User Id=xxxx;Password=yyyy" providerName="System.Data.SqlClient" /> 
</connectionStrings> 

有什麼不尋常的事情在這裏,我不知道的?

回答

0

真的很抱歉...看起來它根本就不是連接。

這是因爲Linq-to-SQL數據層(它在另一個項目中)引用了它自己的連接字符串(儘管無論我在Website項目中實例化DataContext,我總是使用web.config連接字符串作爲參數)。

但是,感謝您的回答,那些可能是好的事情來檢查,如果上述不是問題。

+0

好吧,好消息是:您發現問題及其解決方案 – 2009-09-08 04:24:46

0

不確定您使用的是哪個版本的IIS,但您可能需要創建兩個獨立的Web應用程序:一個指向網站#1文件夾和另一個網站#2。

當您查看網站/虛擬目錄的屬性時,應該爲這兩個目錄設置應用程序名稱。是這樣嗎?

0

LOCALHOST是IIS

(LOCAL)是SQL Server

我的連接字符串通常說"Server=(LOCAL);Integrated Security=SSPI...."

我會檢查安全選項卡,找出這兩個網站都下運行的身份。

相關問題