簡體   English   中英

如何將LocalDb數據庫移動到ASP.NET MVC托管服務器上的SQL Server數據庫?

[英]How to move LocalDb database to SQL Server database on the hosting server for ASP.NET MVC?

我已經在Visual Studio 2013 Express中使用Entity Framework 6和代碼優先的工作流使用ASP.NET MVC 5構建了一個應用程序。 該應用程序在本地主機上運行良好。

以下是發布之前我的連接字符串:

<connectionStrings>
    <add name="DefaultConnection" 
         connectionString="Data Source=(LocalDb)\v11.0;AttachDbFilename=|DataDirectory|\aspnet-ERPCLINIC-20170908103952.mdf;Initial Catalog=aspnet-ERPCLINIC-20170908103952;Integrated Security=True" 
         providerName="System.Data.SqlClient" />
    <add name="SchoolContext" 
         connectionString="Data Source=(LocalDB)\v11.0;AttachDbFilename=|DataDirectory|\ERPCLINIC.mdf;Integrated Security=True" 
         providerName="System.Data.SqlClient" />
</connectionStrings>

這些包含在本地主機服務器上的web.config

下面是我發布后的連接字符串:

<connectionStrings>
    <add name="DefaultConnection" 
         connectionString="Data Source=197.189.255.211 (MS SQL Server);Initial Catalog=qffienta_mat;User Id=qffienta_qffienta;Password=4uOHj7da65;" 
         providerName="System.Data.SqlClient" />
    <add name="SchoolContext" 
         connectionString="Data Source=197.189.255.211 (MS SQL Server);Initial Catalog=qffienta_mat;User Id=qffienta_qffienta;Password=4uOHj7da65;" 
         providerName="System.Data.SqlClient" />
</connectionStrings>

同樣,這些包含在托管服務器上的web.config

嘗試在我的域中啟動應用程序時出現以下錯誤:

“ /”應用程序中的服務器錯誤。

在應用程序配置文件中找不到名為“ SchoolContext_DatabasePublish”的連接字符串。

說明:執行當前Web請求期間發生未處理的異常。 請查看堆棧跟蹤,以獲取有關錯誤及其在代碼中起源的更多信息。

異常詳細信息:System.InvalidOperationException:在應用程序配置文件中找不到名為“ SchoolContext_DatabasePublish”的連接字符串。

源錯誤:

第5行:var db = new SchoolContext();
第6行:
第7行:var mostRecentEntries =
第8行:(來自db.Appointments中的條目
第9行:orderby條目.ID降序

源文件:
c:\\ Websites \\ qffientasp.co.za \\ httpdocs \\ Views \\ Shared_Appointment.cshtml第7行:

我將其與Visual Studio 2013 Express一起部署到了托管帳戶,發布成功,但是當我嘗試在我的域上訪問它時,似乎無法連接到數據庫。 我現在可能不是問題所在。 我從嘗試連接的托管帳戶創建了一個新數據庫。

錯誤說明正確:

在應用程序配置文件中找不到名為“ SchoolContext_DatabasePublish”的連接字符串。

您的connectionStrings部分中具有該名稱的連接在哪里? 另外,為什么在連接字符串中有“((MS SQL Server))”? 應該有ip(,port)或db服務器名稱(/ instance名稱)。

嘗試在構造函數中准確指定連接名稱:

public SchoolContext : base("SchoolContext")

非常感謝。 問題是我錯誤地輸入了服務器名稱。 我在遠程服務器上創建了兩個新數據庫,連接字符串如下所示:

 <add name="SchoolContext" 
     connectionString="Data Source=197.189.255.211;Initial Catalog=qffienta_tar;User Id=qffienta_tar;Password=4uOHj7da65;" 
     providerName="System.Data.SqlClient" />

希望這會對其他人有所幫助,如果您要使用Visual Studio 2013通過Web部署在數據庫上,遠程地發布Visual Studio 2013,則發布發布的應用程序只需要像我上面所做的那樣更改連接字符串以匹配您的新數據庫,用戶ID和密碼。連接字符串,您輸入類似以下內容:

數據源=服務器名稱;初始目錄=數據庫名稱;用戶ID =用戶名;密碼=您的密碼;

我花了兩天時間試圖弄清楚如何在服務器上部署我的應用程序。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM