基本遠端處理工作清單
本主題專門說明一項為了在現有應用程式中提供回溯相容性而保留的舊有技術,不建議用於新的開發工作。分散式應用程式應使用 Windows Communication Foundation (WCF) 進行開發。
透過 .NET Framework 來建立應用程式定義域之間的通訊時,使用 .NET 遠端處理是其中一種可用的方式。您必須先決定應用程式需要哪些功能,並考量手上可以分配的資源有哪些,才能為分散式應用程式選擇特殊的開發模型。如需詳細資訊,請參閱選擇 .NET 中的通訊選項。下列工作清單說明了建立基本 .NET 遠端應用程式時的必要基本步驟。
可遠端處理的型別工作
定義可遠端處理的型別。可遠端處理的型別必須衍生自 MarshalByRefObject。包含可遠端處理型別的組件必須由用戶端應用程式以及伺服器應用程式所同時參考。如果您不希望讓用戶端應用程式參考實作組件,可以使用 Soapsuds.exe 工具來產生 Stub 組件,並由用戶端應用程式來參考它。或者,您可以在共用組件中定義介面,並在遠端物件上實作該介面,然後在用戶端應用程式中參考共用的組件。此方法的唯一缺點就是,當您使用組態檔來設定用戶端時,您無法使用新的運算子來產生遠端物件。您必須呼叫 GetObject 來執行個體化遠端物件。
主機工作
若要從應用程式定義域外部發行任何要使用的遠端物件
設計服務:
選擇主應用程式 (Host Application) 型別,請參閱 HOW TO:建置裝載應用程式。
選擇啟動模式。如需詳細資訊,請參閱 遠端物件的啟動過程.
選擇通道與連接埠。如需詳細資訊,請參閱 選擇通道.
實作主應用程式。遠端主機可以是 Windows 服務、主控台應用程式、Windows Forms 應用程式、網際網路資訊服務 (IIS) 處理序,或是 ASP.NET 應用程式。每一種應用程式類型的需求不一,因此請仔細閱讀文件,了解如何建置您要使用的應用程式類型。請在主機上設定遠端系統的啟動模式與其他資訊,例如應用程式名稱與物件 URI。如果您要以程式設計方式來設定系統,就不需要使用組態檔。如果您使用組態檔,則必須呼叫 RemotingConfiguration.Configure,將該檔案載入到系統中。
在主機上,您可以呼叫 ChannelServices.RegisterChannel 以建立適當的通道並將其註冊到系統中。如果您使用組態檔,則必須呼叫 RemotingConfiguration.Configure,將該檔案載入到系統中。
主機必須參考遠端物件的組件。
用戶端工作
若要從應用程式定義域外部存取任何要使用的服務
設計您的用戶端:
選擇用戶端應用程式定義域。
決定啟動模式以及遠端型別的用戶端啟動 URL 或已知物件 URL。
請考慮您是否需要註冊通道與連接埠。
取得遠端型別的中繼資料。
實作用戶端應用程式。遠端主機可以是 Windows 服務、主控台應用程式、Windows Forms 應用程式、網際網路資訊服務 (IIS) 處理序,或是 ASP.NET 應用程式。每一種應用程式類型的需求不一,因此請仔細閱讀文件,了解如何建置您要使用的應用程式類型。
設定使用啟用模式與其他型別資訊的用戶端遠端系統,例如應用程式名稱與物件統一資源識別元 (URI)。如果您要以程式設計方式來設定系統,就不需要使用組態檔。如果您使用組態檔,則必須呼叫 RemotingConfiguration.Configure,將該檔案載入到系統中。
您可以呼叫 ChannelServices.RegisterChannel 以建立適當的通道並將其註冊到系統中。如果您使用組態檔,則必須呼叫 RemotingConfiguration.Configure,將該檔案載入到系統中。
產生並呼叫遠端物件。如果物件是由組態檔所設定,則您可以使用 new 運算子。如果物件是由程式設計方式所設定,則您可以呼叫 GetObject。