2013-08-30 47 views
1

我正在嘗試爲本地數據庫配置不同的位置。在實體框架中配置本地數據庫位置

我讀了article關於配置連接字符串,它暗示我可以替換| DataDirectory |在使用〜/ MyDirectory的web配置中,其中〜是Web應用程序根目錄。所以,我必須輸入連接字符串:

<connectionStrings> 
<add name="Context" connectionString="Data Source=(LocalDb)\v11.0;Initial Catalog=Context-20130829161219;Integrated Security=SSPI;AttachDBFilename=~/MyDirectory/Context-20130829161219.mdf" 
    providerName="System.Data.SqlClient" /> 

不幸的是,當我運行的應用程序似乎並沒有在所有創建數據庫。我可以想象,這只是我做錯的一件小事,但如果有人能指出我正確的方向,我將不勝感激。

非常感謝

回答

1

嘗試運行從包管理器控制檯Update-Database cmdlet的 - 你至少應該看到一些輸出指示爲什麼它不工作。

+0

感謝您的建議。我收到以下錯誤:發生文件激活錯誤。物理文件名'〜/ MyDirectory/Context-20130829161220.mdf'可能不正確。診斷並更正其他錯誤,然後重試該操作。 – Theo

+1

當使用'| DataDirectory |'時它能正常工作嗎? – Richard

+0

是的,當更換〜/ MyDirectory/with | DataDirectory |一切正常 – Theo

2

讓我們試着用下面的字符串時,它會幫助你

<add name="Context" connectionString="metadata=res://*/Models.Datacontext.csdl|res://*/Models.Datacontext.ssdl|res://*/Models.Datacontext.msl;provider=System.Data.SqlClient;provider connection string=&quot;data source=(LocalDb)\SQLInstance;initial catalog=Context-20130829161219;persist security info=True;user id=sa;password=Yourpassword;multipleactiveresultsets=True;App=EntityFramework&quot;" providerName="System.Data.EntityClient" /> 

或更換您的源=(的LocalDB)\ SQLINSTANCE;初始與源= \ SQLINSTANCE;初始