2010-05-07 107 views
0

我有一個ASP.NET MVC應用程序在託管服務器上連接了一年多,連接到SQL Server。我不得不改變託管服務,新的支持MVC 1.0。我還將一個非MVC ASP應用程序移至同一個託管服務。無法從ASP.NET MVC應用程序連接到SQL Server應用程序

現在,當我嘗試驗證用戶登錄時,基於MY MVC的應用程序會回調此錯誤。

建立到SQL Server的連接時發生網絡相關或實例特定的錯誤。服務器未找到或無法訪問。驗證實例名稱是否正確,並將SQL Server配置爲允許遠程連接。 (提供程序:命名管道提供程序,錯誤:40 - 無法打開與SQL Server的連接)

現在,非MVC應用程序可以訪問完全相同的數據庫並認證用戶。從我的開發箱運行時,MVC應用程序連接正常。當我從運行IIS 7的內部SQL 2008服務器安裝並運行該站點時,它也可以正常運行/連接/驗證。

我和託管支持技術人員一樣,無法完全確定連接字符串的工作原理除了在託管服務器上的所有地方,並且僅在ASP.NET MVC Web應用程序內運行時。

任何想法將不勝感激。

+0

你檢查了你的連接字符串嗎?你有沒有在你的web.config中定義它? – Kelsey 2010-05-07 17:29:37

+0

出於好奇,誰是託管服務? – curtisk 2010-05-07 17:36:31

+0

確切的連接字符串可以從開發者和測試服務器的非MVC應用程序中運行。我確定Web.config很好。但是,它在web.config文件中。 – 2010-05-07 17:41:06

回答

0

您是否在連接字符串中使用SQL身份驗證或Windows身份驗證?如果您使用的是Windows身份驗證,則用於IIS應用程序的默認帳戶是NETWORK SERVICE。您需要允許該用戶訪問您的數據庫。

您可能想要檢查應用程序池在哪個用戶下運行。非MVC應用程序有可能在不同於MVC應用程序的用戶下運行。

+0

我正在使用SQL身份驗證。我將檢查應用程序池分配,但... – 2010-05-07 17:57:10

相關問題