連絡管理員解決方案

作者:Jason Lee

系列教學課程 使用範例解決方案連絡人管理員解決方案來代表具有實際複雜度層級的企業級應用程式。 本主題介紹連絡人管理員解決方案、描述解決方案的主要元件,並識別在企業環境中將這類應用程式部署至各種目的地平臺的挑戰。

當您完成這些教學課程中的主題時,您可以使用連絡人管理員解決方案作為參考實作,示範如何在企業部署案例中遇到特定挑戰。 下一個主題: 設定連絡人管理員解決方案,說明如何在開發人員工作站上下載並執行解決方案。

方案概觀

連絡人管理員解決方案包含四個個別專案:

連絡人管理員解決方案包含四個個別專案。

  • ContactManager.Mvc。 這是 ASP.NET MVC 3 Web 應用程式專案,代表解決方案的進入點。 它提供一些基本的 Web 應用程式功能,例如讓使用者能夠建立和檢視連絡人詳細資料。 應用程式依賴 Windows Communication Foundation (WCF) 服務來管理連絡人,以及 ASP.NET 應用程式服務資料庫來管理驗證和授權。
  • ContactManager.Database。 這是 Visual Studio 資料庫專案。 專案會定義儲存連絡人詳細資料之資料庫的架構。
  • ContactManager.Service。 這是 WCF Web 服務專案。 WCF 服務會公開端點,讓呼叫端能夠在 ContactManager 資料庫上執行建立、擷取、更新和刪除 (CRUD) 作業。 服務依賴 ContactManager 資料庫和 ContactManager.Common.dll 元件。
  • ContactManager.Common。 這是類別庫專案。 WCF 服務依賴此元件中定義的類型。

此解決方案也包含名為 Publish 的方案資料夾。 這包含各種自訂專案檔和命令檔,示範如何控制及操作建置和部署程式。 本教學課程稍後會詳細說明這些內容。

在概念層級,解決方案的元件會像這樣組合在一起:

解決方案的元件如何結合在概念層級。

注意

雖然 ASP.NET MVC 3 Web 應用程式使用 ASP.NET 成員資格提供者,但 Web 應用程式內的所有頁面都允許匿名存取。 這顯然不是實際的設定。 不過,解決方案是以這種方式設定,讓您更輕鬆地部署和測試解決方案,而不需設定使用者帳戶和角色。

部署挑戰

連絡人管理員解決方案說明許多企業部署案例常見的數個部署挑戰:

  • 方案是由多個相依專案所組成。 您必須同時部署這些專案。
  • 每個環境都需要更新連接字串和服務端點,而且在許多情況下,開發人員將無法使用這項資訊。
  • 當您將 ContactManager 資料庫部署到預備和生產環境時,您必須在後續部署上保留現有的資料。
  • 當您部署 ASP.NET 應用程式服務資料庫時,您需要部署一些設定資料,但省略任何使用者帳戶資料。
  • 專案包含一些不應該部署的檔案和資料夾。 您必須從部署程式中排除這些檔案和資料夾。
  • 解決方案必須支援從 Team Foundation Server (TFS) 組建伺服器進行自動化部署。

結論

本主題提供連絡人管理員解決方案的高階概觀,並識別許多企業部署案例常見的一些固有部署挑戰。 本教學課程中的其餘主題將說明一些可用來滿足這些挑戰的技術。

下一個主題: 設定連絡人管理員解決方案,說明如何在開發人員工作站上下載並執行解決方案。