我已經在ASP.NET MVC 5中創建了一個使用實體框架6代碼優先的應用程序,並將它部署到我的服務器。一切工作正常,除了涉及數據庫使用的操作/控制器操作。首先附加現有數據庫實體框架代碼的錯誤
我從我的電腦上傳一次生成的數據庫文件到服務器的App_Data
文件夾。
部署後,我改變了連接字符串在我的web.config文件來自:
connectionString="Data Source=(LocalDb)\v11.0;AttachDbFilename=|DataDirectory|\aspnet-NERC_Main-20160104065223.mdf;Initial Catalog=aspnet-NERC_Main-20160104065223;Integrated Security=True"
到
connectionString="Data Source=.;AttachDbFilename=|DataDirectory|\aspnet-NERC_Main-20160104065223.mdf;Initial Catalog=aspnet-NERC_Main-20160104065223;Database=aspnet-NERC_Main-20160104065223.mdf;Trusted_Connection=Yes;Integrated Security=True;"
其拋出的
錯誤CREATE DATABASE權限被拒絕在數據庫'主'中。
這可能是由於當前數據庫文件沒有被連接,實體框架試圖在其他一些受限制的目錄中生成新的數據庫。
我讀了AttachDbFileName
僅適用於SQL Server Express實例,在我的情況下它不存在。
如何修改連接字符串,以便使用當前已上傳的數據庫。
注:
遠程服務器有一個完整的SQL Server安裝2008 R2的。該服務器不支持用戶實例。我的數據庫沒有密碼保護,因此我將Integrated Security屬性值設置爲True。如有需要,我會提供任何其他信息。
因此,如果不諮詢Server Administrator來完成將數據庫附加到服務器的任務,我絕對沒有辦法直接附加它(或者在我的情況下,使用App_Data文件夾中的現有文件)? –
@AbdullahGulraiz:沒有。 「從App_Data附加一個自由浮動的'.mdf'文件」專門** ** Express版本 –