採用 Windows Communication Foundation

您可以選擇使用 Windows Communication Foundation (WCF) 進行新的開發,同時亦可繼續維護現有以 ASP.NET 開發的應用程式。Because WCF is intended to be the most suitable choice for facilitating communication with applications built with the .NET Framework in any scenario, it can serve as a standard tool for solving a wide variety of software communications problems in a way that ASP.NET cannot.

新的 WCF 應用程式可以部署在與現有 ASP.NET Web 服務相同的電腦上。如果現有的 ASP.NET Web 服務使用 2.0 版之前的 .NET Framework,您可以使用 ASP.NET IIS註冊工具選擇性地將 .NET Framework 2.0 部署至 IIS 應用程式,以便裝載新的 WCF 應用程式。該工具記錄於 ASP.NET IIS 註冊工具 (Aspnet_regiis.exe) (本頁面可能為英文),並在 IIS 6.0 管理主控台中內了建使用者介面。

WCF 可透過將設定為於 ASP.NET 相容性模式執行的 WCF 服務,加入至 IIS 內現有的 ASP.NET Web 服務應用程式,而將新功能加入至現有的 ASP.NET Web 服務。由於 ASP.NET 相容性模式的緣故,透過使用 HttpContext 類別,新的 WCF 服務程式碼便可以存取及更新與預先存在之 ASP.NET 程式碼相同的應用程式狀態資訊。應用程式也可以共用相同的類別庫 (Class Library)。

WCF 用戶端可以使用 ASP.NET Web 服務。ASP.NET Web 服務用戶端則可以使用以 BasicHttpBinding 設定的 WCF 服務。ASP.NET Web 服務可以與 WCF 應用程式同時存在,WCF 甚至可用來對現有的 ASP.NET Web 服務新增功能。有鑑於這些方法 (WCF 和 ASP.NET Web 服務可以一起使用),您只需要在需使用 WCF 所提供功能,而 ASP.NET Web 服務卻未提供時,再將 ASP.NET Web 服務移轉為 WCF。

即使在少數情況下是必要的,請先仔細考量將程式碼從某項技術移轉為另一項技術是正確但不常見的作法。採用新技術的原因是為了滿足舊技術無法滿足的新需求,在這種情況下,正確的作法是設計一種新的解決方案,以滿足最近所擴展的需求。新設計的好處是可以獲得使用現有系統的經驗,並可從系統設計過程中獲得知識。新的設計也可以使用新技術的完整功能,而不是在新的平台上複製舊有的設計。在製作新設計之主要元素的原型後,便可以更容易地在設計新的程式碼時,從現有系統內重複使用這些程式碼。

少數情況下,從 ASP.NET Web 服務移植至 WCF 是正確的解決方案,下列章節將提供如何繼續進行的相關指引。其中包含如何移轉服務,以及如何移轉用戶端的建議。

如需如何將現有的 ASP.NET Web 服務移轉至 WCF 的完整分析,請參閱 ASP.NET Web 服務與 Windows Communication Foundation (本頁面可能為英文)。本章節將說明如何從 ASP.NET Web 服務的中繼資料實作相容的 WCF 服務,以及如何將 ASP.NET Web 服務和用戶端程式碼移轉至 WCF。

請參閱

工作

HOW TO:擷取中繼資料並實作相容性服務
HOW TO:將 ASP.NET Web 服務程式碼移轉至 Windows Communication Foundation
HOW TO:將 ASP.NET Web 服務用戶端程式碼移轉至 Windows Communication Foundation