使用 Visual Studio 使用 SQL Server Compact 部署 ASP.NET Web 應用程式:簡介 - 12 的 1
演講者:Tom Dykstra
本系列教學課程說明如何使用 Visual Studio 2012 RC 或 Visual Studio Express 2012 RC for Web 部署包含 SQL Server Compact 資料庫的 ASP.NET Web 應用程式專案。 如果您安裝 Web 發行更新,也可以使用 Visual Studio 2010。
如需示範 Visual Studio 2012 RC 版本之後引進的部署功能的教學課程,示範如何部署 SQL Server Compact 以外的 SQL Server 版本,並示範如何部署至 Azure App 服務 Web Apps,請參閱使用 Visual Studio ASP.NET Web 部署。
這些教學課程會引導您先在本機開發計算機上部署到 IIS,以進行測試,然後再部署到第三方裝載提供者。 您將部署的應用程式會使用應用程式資料庫和 ASP.NET 成員資格資料庫。 您一開始使用 SQL Server Compact 並部署至 SQL Server Compact,稍後的教學課程會示範如何部署資料庫變更,以及如何移轉至 SQL Server。
本教學課程假設您知道如何在 Visual Studio 中使用 ASP.NET。 如果您未這麼做,最好是基本 ASP.NET Web Form 教學課程或基本 ASP.NET MVC 教學課程。
如果您有與教學課程沒有直接相關的問題,您可以將問題張貼至 ASP.NET 部署論壇。
概觀
這些教學課程會引導您先在本機開發計算機上部署到 IIS,以進行測試,然後再部署到第三方裝載提供者。 您將部署的應用程式會使用應用程式資料庫和 ASP.NET 成員資格資料庫。 您一開始使用 SQL Server Compact 並部署至 SQL Server Compact,稍後的教學課程會示範如何部署資料庫變更,以及如何移轉至 SQL Server。
教學課程數目 – 全部為 11 個,加上疑難解答頁面 – 可能會讓部署程式看起來令人望而卻生畏。 事實上,部署月臺的基本程序構成教學課程集的一小部分。 不過,在真實世界中,您通常需要一些小型但重要的部署額外層面的相關信息,例如,在目標伺服器上設定資料夾許可權。 我們已在教學課程中包含許多額外的技術,希望教學課程不會省略可能導致您無法成功部署實際應用程序的資訊。
本教學課程的設計目的是要依序執行,而每個元件都是以上一個部分為基礎而建置的。 不過,您可以略過與您情況無關的部分。 (略過元件可能需要您在稍後的教學課程中調整程式。
適用對象
本教學課程旨在 ASP.NET 在小型組織或其他環境中工作的開發人員::
- 不會使用持續整合程式(自動化組建和部署)。
- 生產環境是第三方裝載提供者。
- 一個人通常會填滿多個角色(同一個人開發、測試及部署)。
在企業環境中,實作持續整合程序比較常見,而生產環境通常由公司自己的伺服器裝載。 不同的人員通常也會執行不同的角色。 如需企業部署的相關信息,請參閱 在企業案例中部署Web應用程式。
各種大小的組織也可以將 Web 應用程式部署到 Azure,而這些教學課程中顯示的大部分程式也適用於 Azure App 服務 Web Apps。 如需 Azure 的簡介,請參閱 https://azure.microsoft.com。
教學課程中顯示的裝載提供者
本教學課程會引導您完成使用主控公司設定帳戶,並將應用程式部署至該裝載提供者的程式。 已選擇特定的主控公司,讓教學課程可以說明部署至實時網站的完整體驗。 每個裝載公司都提供不同的功能,部署至其伺服器的體驗會有些不同:不過,本教學課程中所述的程式對於整體程式而言是典型的。
用於本教學課程的裝載提供者 Cytanium.com 是其中一個可用的主機提供者,而且本教學課程中的使用並不構成簽署或建議。
部署網站專案
Contoso University 是 Visual Studio Web 應用程式專案。 本教學課程所示範的大部分部署方法和工具都不適用於 網站專案。 如需如何部署網站項目的詳細資訊,請參閱 ASP.NET 部署內容對應。
部署 ASP.NET MVC 專案
在本教學課程中,您會部署 ASP.NET Web Form 專案,但您學到的一切也適用於 ASP.NET MVC。 Visual Studio MVC 專案只是另一種 Web 應用程式專案形式。 唯一的差別在於,如果您要部署到不支援 ASP.NET MVC 或目標版本的裝載提供者,您必須確定您已在專案中安裝適當的 (MVC 3 或 MVC 4) NuGet 套件。
程式設計語言
範例應用程式會使用 C#,但教學課程不需要瞭解 C#,而且教學課程所顯示的部署技術並非特定語言。
在本教學課程期間進行疑難解答
當部署期間發生錯誤,或部署的網站未正確執行時,錯誤訊息不一定會提供解決方案。 為了協助您解決一些常見的問題案例, 可以使用疑難解答參考頁面 。 如果您在進行教學課程時收到錯誤訊息或某些項目無法運作,請務必檢查疑難解答頁面。
批注歡迎使用
歡迎對教學課程進行批注,而且當教學課程更新時,將盡一切努力考慮教學課程批注中提供的改進建議。
必要條件
開始之前,請確定您的計算機已安裝 Windows 7 或更新版本,以及下列其中一項產品:
- Visual Studio 2010 SP1
- Visual Web Developer Express 2010 SP1
- Visual Studio 2012 RC 或 Visual Studio Express 2012 RC for Web
如果您有 Visual Studio 2010 SP1 或 Visual Web Developer Express 2010 SP1,也請安裝下列產品:
- 適用於 .NET 的 Azure SDK (VS 2010 SP1) (包括 Web 發佈更新)
- Microsoft Visual Studio 2010 SP1 Tools for SQL Server Compact 4.0
需要其他一些軟體才能完成本教學課程,但您尚未載入該軟體。 本教學課程將逐步引導您完成在需要時安裝的步驟。
下載範例應用程式
您要部署的應用程式名為 Contoso University,且已為您建立。 它是一個簡化版本的大學網站,以 ASP.NET 網站上的 Entity Framework 教學課程中所述的 Contoso University 應用程式鬆散為基礎。
安裝必要條件時,請下載 Contoso University Web 應用程式。 .zip檔案包含專案的多個版本,以及包含所有12個教學課程的 PDF 檔案。 若要完成教學課程的步驟,請從 ContosoUniversity-Begin 開始。 若要查看教學課程結尾的項目外觀,請開啟 ContosoUniversity-End。 若要查看移轉至教學課程 10 中完整 SQL Server 之前的項目外觀,請開啟 ContosoUniversity-AfterTutorial09。
若要準備完成教學課程步驟,請將 ContosoUniversity-Begin 儲存至您用於處理 Visual Studio 專案的任何資料夾。 根據預設,這是下列資料夾:
C:\Users\<username>\Documents\Visual Studio 2012\Projects
(針對本教學課程中的螢幕快照,專案資料夾位於 : 磁碟驅動器的 C
根目錄中。
啟動 Visual Studio、開啟專案,然後按 CTRL-F5 來執行它。
您可以從選單列存取網站頁面,並可讓您執行下列功能:
- 顯示學生統計數據(關於頁面)。
- 顯示、編輯、刪除和新增學生。
- 顯示和編輯課程。
- 顯示和編輯講師。
- 顯示和編輯部門。
以下是幾個代表性頁面的螢幕快照。
檢閱影響部署的應用程式功能
應用程式的下列功能會影響部署應用程式的方式,或您必須執行哪些動作來部署應用程式。 在系列中的下列教學課程中,會更詳細地說明上述各項。
- Contoso University 會使用 SQL Server Compact 資料庫來儲存應用程式數據,例如學生和講師名稱。 資料庫包含測試數據和生產數據的組合,當您部署至生產環境時,您需要排除測試數據。 稍後在本教學課程系列中,您將從 SQL Server Compact 移轉至 SQL Server。
- 應用程式會使用 ASP.NET 成員資格系統,將用戶帳戶資訊儲存在 SQL Server Compact 資料庫中。 應用程式會定義可存取某些受限制資訊的系統管理員使用者。 您必須部署成員資格資料庫,而不需要測試帳戶,但具有一個系統管理員帳戶。
- 因為應用程式資料庫和成員資格資料庫使用 SQL Server Compact 作為資料庫引擎,因此您必須將資料庫引擎部署到裝載提供者,以及資料庫本身。
- 應用程式會使用 ASP.NET 通用成員資格提供者,讓成員資格系統可以將其數據儲存在 SQL Server Compact 資料庫中。 包含通用成員資格提供者的元件必須與應用程式一起部署。
- 應用程式會使用 Entity Framework 5.0 來存取應用程式資料庫中的數據。 包含 Entity Framework 5.0 的元件必須與應用程式一起部署。
- 應用程式會使用第三方錯誤記錄和報告公用程式。 此公用程式是在必須使用應用程式部署的元件中提供。
- 錯誤記錄公用程式會將 XML 檔案中的錯誤資訊寫入檔案資料夾。 您必須確定 ASP.NET 在部署網站中執行的帳戶具有此資料夾的寫入許可權,而且您必須從部署中排除此資料夾。 (否則,測試環境中的錯誤記錄檔數據可能會部署到生產環境,而且/或可能會刪除生產錯誤記錄檔。
- 應用程式包含一些必須根據目的地環境(測試或生產環境)在已 部署的 Web.config 檔案中變更的設定,以及根據組建組態而必須變更的其他設定(偵錯或發行)。
- Visual Studio 解決方案包含類別庫專案。 只應該部署此項目產生的元件,而不是專案本身。
在本系列的第一個教學課程中,您已下載範例Visual Studio專案,並檢閱了會影響您部署應用程式方式的網站功能。 在下列教學課程中,您會設定一些要自動處理的事項來準備部署。 您手動處理的其他專案。