2011-12-30 65 views
0

在一個ASP MVC項目中,我用於身份驗證ASPNETDB.mdf在我的App_Data文件夾,並作爲項目數據源連接字符串到我的SQL Server 2008從我的託管供應商。ASP.NET MVC連接字符串到ASPNETDB工作本地主機沒有部署時

我的連接字符串是:

<add name="ApplicationServices" connectionString="data source=.\SQLEXPRESS;Integrated Security=SSPI;AttachDBFilename=|DataDirectory|aspnetdb.mdf;User Instance=true" providerName="System.Data.SqlClient"/> 
<add name="myConnectionString" connectionString="Data Source=xx.xx.xx.xx;Initial Catalog=db_name;User ID=myid;Password=mypass" providerName="System.Data.SqlClient"/> 

的問題是局部,認證工作得很好,但是當我部署我的項目,驗證失敗,但其他連接到數據的工作。

我看到它的第一個連接使用Windows身份驗證。 我應該改變第一個連接字符串嗎?

+0

你有什麼樣的問題我曾經有類似的問題1.確保你正在使用並正常工作的數據源名稱與應用數據中使用的相同2.確保你爲您的應用程序提供對App_Data文件夾的讀寫權限。 – 2011-12-30 23:24:23

回答

0

很可能,您部署的服務器上的SQL實例不是SQLEXPRESS。您應該使用與您在第二個連接字符串中使用相同的服務器名稱。

+0

好吧,我現在就試試,但這是否意味着我必須在需要部署時以及何時必須在本地工作來回切換? – 2011-12-30 22:52:23

+0

@AlexPeta - 是的,幸好visual studio提供了一個簡單的方法來做到這一點。 http://vishaljoshi.blogspot.com/2009/03/web-deployment-webconfig-transformation_23.html – 2011-12-30 22:59:28

+0

我想到最後。我導出了本地腳本,並運行服務器上的重新創建數據庫,並使用指向服務器而不是文件的SQL連接。 – 2012-02-08 15:05:33