我在我的ASP.NET MVC應用程序中遇到了一個奇怪的問題,其連接字符串在本地機器上的開發工作正常,但無法連接到SQL部署在Windows Server 2008上的Server 2008 R2數據庫。我嘗試連接的數據庫駐留在Windows Server 2003計算機上。兩臺機器都在同一個網絡上。這裏是我的web.config
文件中的連接字符串:數據庫連接字符串適用於本地機器,但不適用於部署的服務器
<connectionStrings>
<add name="MyDatabase" connectionString="data source=MyServerName;Initial Catalog=MyAppDB;User Id=sqluseraccount;Password=mypassword" providerName="System.Data.SqlClient" />
</connectionStrings>
我使用普通的舊ADO.NET查詢數據庫,所以我的方法是這樣的:
string connectionString = ConfigurationManager.ConnectionStrings["MyDatabase"].ConnectionString;
using (SqlConnection conn = new SqlConnection(connectionString))
{
// Code to query the database here
}
我知道連接字符串很好,因爲它適用於我的本地機器以及部署到SQL數據庫所在服務器的MVC應用程序。我知道MVC應用程序的工作原理,因爲我可以正確地請求不需要數據庫調用的任何頁面。我對可能發生的事情感到不知所措。 Windows Server 2008計算機上還有其他應用程序(主要是Java),可以無誤地連接到同一個數據庫。
我希望這裏有人能指出我正確的方向來解決這個問題。
什麼是錯誤?你有任何時髦的web.config變換?也許您可以在部署的服務器上打印出一些診斷信息,例如連接字符串的哈希值以查看該字符串是否實際上相同,或者某些連接問題。 –