2013-04-25 418 views
0

我使用VS2012和SQL 2008R2在本地計算機上開發了此應用程序。我正試圖將其移到生產服務器上。它是一款帶有2012 SQL Server的虛擬服務器。我檢查了遠程連接的所有屬性,並且一切都已啓用。應用程序以登錄屏幕打開,一旦我輸入用戶名和密碼(這是使用WSAT在我的計算機上創建的,現在我收到此錯誤: 建立與SQL Server的連接時發生網絡相關或實例特定的錯誤。驗證實例名稱是否正確,並將SQL Server配置爲允許遠程連接(提供程序:SQL網絡接口,錯誤:25 - 連接字符串無效) 這是我的在web.config中:提供者:SQL網絡接口,錯誤:25 - 連接字符串無效

<connectionStrings> 
    <remove name="LocalSqlServer" /> 
<add connectionString="Server=\\events;Database=Digital Signage;Integrated Security=true" name="DSConnectionString" /> 
    <add connectionString="data source=\\events;Integrated Security=SSPI;AttachDBFilename=c:\\DS\aspnetdb.mdf;User Instance=true" name="LocalSqlServer" providerName="System.Data.SqlClient" /> 

回答

1

不能完全確定,但你遇到的一些點,這可能會有幫助:

  • 可以使用的資源像this幫你生成適當的連接字符串
  • 我不知道Server=\\events聽起來完全正確的 - 你也許應該用實際的SQL實例的名稱替換該位置遠程部署時(無論是<machine name><machine name>\<instance name>命名實例)
  • 你可能並不需要明確說明SQL Server正在監聽的(如果它仍然默認1433)端口的事,但要記住
  • 你有您明確引用連接的任何位置字符串LocalSqlServer在你的代碼?如果是這樣,是否在構建和部署之前將其更改爲引用連接字符串DSConnectionString? (注意:最好只保留連接字符串條目,但將連接字符串的值更改爲SQL 2012實例所需的值,而不是創建新的連接字符串條目,但我不確定您的具體使用案例)
+0

LocalSqlServer僅用於用戶帳戶數據庫我認爲(ASPNETDB.dbf),其餘的地方我使用DSConnectionString連接到我的表。由於我在開發過程中使用了2008R2,在製作過程中使用了2012R2,因此我遇到了麻煩。 – Nita 2013-04-29 15:32:05

+0

不,我認爲你不應該在版本之間出現問題。可能有些東西在你的連接字符串中很有趣 - 我只是使用[connectionstrings.com](http://www.connectionstrings.com/sql-server-2012)來爲你構建一個適當的連接字符串 – nkvu 2013-04-29 16:41:43

+0

好吧,我加了帶有用戶名和密碼的sql認證。現在它說無法找到數據庫。我通過IIS從連接字符串中刪除了LocalSqlServer鏈接。 LocalSqlServer在machine.config中聲明。 – Nita 2013-04-29 17:53:02