.NET Framework 4 的 Windows Communication Foundation 字彙

以下是專為 Windows Communication Foundation 文件所定義的詞彙。

詞彙

詞彙 定義

Address - 位址

指定接收訊息的位置, 可指定做為統一資源識別元 (URI)。 URI 結構描述部分會指定用來到達位址的傳輸機制,例如 HTTP 和 TCP。 URI 的階層式部分包含唯一位置,其格式取決於傳輸機制。

Application Endpoint - 應用程式端點

由應用程式公開的端點,會對應至應用程式所實作的服務合約。

Behavior - 行為

行為是指控制服務、端點、特定作業或用戶端的各種執行階段層面的元件。 行為是根據範圍來分組:通用行為會影響全域所有的端點、服務行為只會影響服務相關的層面、端點行為只會影響端點相關的屬性,而作業層級行為會影響特定作業。

Binding - 繫結

定義用來和 WCF 服務進行通訊的通訊協定。 它是由一組稱為繫結項目的元件所建構,這些元件會彼此「堆疊」,以建立通訊基礎結構。 請參閱<端點>。

Channel - 通道

這是繫結項目的實體實作。 繫結表示組態,通道則是與該組態相關聯的實作。 因此,每個繫結項目都有相關聯的通道。 通道會彼此堆疊,以建立繫結的實體實作,也就是「通道堆疊」。

Claim-based Security - 宣告架構安全性

根據宣告,允許對受保護資源的授權存取。

Client Application - 用戶端應用程式

用戶端應用程式是與一個或多個端點交換訊息的程式。 用戶端應用程式首先會建立 WCF 用戶端的執行個體,並呼叫 WCF 用戶端的方法。 值得注意的是,單一應用程式可以同時是用戶端和服務。

Coding - 程式碼

可讓開發人員嚴格控制服務或用戶端的所有元件,而且透過組態所做的任何設定都可以使用程式碼進行檢查,並在必要時加以覆寫。 應用程式可以透過程式碼、組態或兩者的組合來控制。

Configuration - 組態

組態的優點是,在撰寫程式碼之後,允許開發人員以外的其他人 (例如,網路系統管理員) 設定用戶端和服務參數,而不需要重新編譯。 組態不僅可讓您設定如端點位址的值,還能讓您加入端點、繫結和行為,取得進一步的控制。 應用程式可以透過組態、程式碼或兩者的組合來控制。

Contract - 合約

合約是適用於特定合約類型的支援規格。 例如,服務合約是作業群組的規格。 在 WCF 中,合約的階層在位於 System.ServiceModel.Description 命名空間的描述物件中具有鏡像。 服務合約是 WCF 中的最大合約範圍。 服務合約中的每個服務作業都有作業合約,此合約會指定作業可以交換的訊息 (包括錯誤訊息),以及要交換的方向。 作業中的每個訊息都有訊息合約,做為 SOAP 訊息封套的結構規格,並且每個訊息合約都有資料合約,此合約會指定包含在訊息中的資料結構。

Data Contract - 資料合約

服務使用的資料型別必須在中繼資料中描述,才能與其他服務相互操作。 資料型別的描述也稱為資料合約,這些型別可以用於訊息的任何部分,例如做為參數或傳回型別。 如果服務只使用簡單型別,就不需要明確使用資料合約。

Declarative Application - 宣告式應用程式

已充分描述、不需執行命令式指示即可在執行階段建立的應用程式。

Endpoint - 端點

由位址、繫結及合約所組成,用來與 WCF 服務進行通訊。

Endpoint Address - 端點位址

可讓您為服務中的每個端點建立唯一的端點位址,或在特定狀況下讓不同端點共用位址。

Fault Contract - 錯誤合約

錯誤合約可以與服務作業產生關聯,來表示可以傳回至呼叫者的錯誤。 作業可以有零或多個相關聯的錯誤。 這些錯誤屬於 SOAP 錯誤,這種錯誤會模式化為程式設計模型中的例外狀況。 例外狀況會轉換為可以傳送至用戶端的 SOAP 錯誤。

Hosting - 裝載

服務必須裝載於某些處理序。 主機是控制服務存留期的應用程式。 服務可以是自我裝載,或由現有裝載處理序管理。

Hosting Process - 裝載處理序

裝載處理序是設計用來裝載服務的應用程式, 其中包括網際網路資訊服務 (IIS)、Windows Activation Services (WAS) 和 Windows 服務。 在這些裝載案例中,主機會控制服務的存留期。 例如,您可以使用 IIS 來設定包含服務組件和組態檔的虛擬目錄。 當接收到訊息時,IIS 就會啟動服務並控制它的存留期。

Initiating Operation - 初始化作業

此作業是指,新工作階段的第一個作業。 只有在已呼叫至少一個初始化作業後才能呼叫非初始化作業。

Instancing Model - 執行個體模型

服務具有執行個體模型 (Instancing Model)。 執行個體模型有三種:「單一」表示單一 CLR 物件會服務所有用戶端,「每一呼叫」表示會建立新 CLR 物件來處理每個用戶端呼叫,而「每一工作階段」表示會建立一組 CLR 物件,一個物件代表每個個別的工作階段。 執行個體模型的選擇取決於應用程式需求和預期的服務使用模式。

Message - 訊息

訊息是獨立的資料單位,由數個部分組成,其中包括本文和標頭。

Message Contract - 訊息合約

訊息連絡人描述訊息的格式。 例如,它會宣告訊息項目應放在標頭或本文、應該將哪個層級的安全性套用至哪些訊息的項目等等。

Message Security Mode - 訊息安全性模式

訊息安全性模式會指定藉由實作一或多個安全性規格來提供安全性。 每個訊息都會包含必要機制,以便在訊息傳輸期間提供安全性,並讓接收者可以偵測竄改及解密訊息。 就這個意義而言,安全性是封裝在每個訊息內,可以在多個躍點間提供端對端安全性。 因為安全性資訊成為訊息的一部分,所以也可以將多種認證包含在訊息中 (稱為「宣告」(Claim))。 這個方法的優點是,訊息可以透過任何傳輸安全地傳送,包括來源和目的地之間的多個傳輸。 缺點是使用的密碼編譯機制很複雜,因此會影響效能。

Metadata - 中繼資料

服務的中繼資料描述服務的特性,外部實體必須了解這些服務特性,才能與此服務通訊。 ServiceModel 中繼資料公用程式工具 (Svcutil.exe) 可以取用中繼資料,以產生 WCF 用戶端,以及用戶端應用程式可用來與服務互動的伴隨組態。 服務公開的中繼資料包括 XML 結構描述文件 (定義服務的資料合約) 和 WSDL 文件 (描述服務的方法)。 啟用時,WCF 會藉由檢查服務及其端點,自動產生服務的中繼資料。 若要從服務發行中繼資料,您必須明確啟用中繼資料行為。

Operation Contract - 作業合約

作業合約會定義作業的參數和傳回型別。 當建立會定義服務合約的介面時,您可以將 T:System.ServiceModel.OperationContractAttribute 屬性套用至屬於合約一部分的每個方法定義,來表示作業合約。 作業可以模式化成接受單一訊息且傳回單一訊息,或者接受一組型別且傳回一個型別。 在後者中,系統會判斷該作業要交換之訊息的格式。

Projection - 投影

網路上的資料表示。 例如,SOAP 投影會以 SOAP 封套方式傳送訊息,而 Web 投影則會以 JSON 格式傳送訊息。

Security - 安全性

WCF 的安全性包含機密性 (加密訊息以防止竊聽)、完整性 (偵測竄改訊息的方法)、驗證 (驗證伺服器和用戶端的方法) 以及授權 (控制存取資源)。 運用現有的安全性機制 (例如 TLS over HTTP,也稱為 HTTPS),或實作一或多個不同的 WS-* 安全性規格,都能提供這些功能。

Self-hosted Service - 自我裝載的服務

自我裝載的服務是在開發人員建立的處理序應用程式中執行。 開發人員會控制服務存留期、設定服務屬性、開啟服務 (這會將服務設定為接聽模式) 以及關閉服務。

Service - 服務

這是公開一個或多個端點的程式或處理序,其中每個端點會公開一項或多項作業。

Service Contract - 服務合約

服務合約會將多個相關作業結合至單一功能單位。 合約可以定義服務層級的設定,例如服務的命名空間、對應的回呼合約和其他類似的設定。 在大部分的情況下,合約是以您選擇的程式語言建立介面,並且將 T:System.ServiceModel.ServiceContractAttribute 屬性套用至介面的方式來定義。 藉由實作介面,即可產生實際服務程式碼。

Service Operation - 服務作業

服務作業是指在服務的程式碼中定義的程序,此程序會實作作業的功能。 這項作業會向用戶端公開為 WCF 用戶端上的方法。 此方法可能會傳回值且接受選擇性的引數數目,或者不接受引數且不會傳回回應。 例如,作用為簡單 "Hello" 的作業,可以做為用戶端出席狀態的通知,並且用來開始一系列的作業。

System-provided Bindings - 系統提供的繫結

WCF 包含一些系統提供的繫結。 這些繫結是已針對特定案例最佳化的繫結項目集合。 例如,T:System.ServiceModel.WSHttpBinding 是設計用來與實作各種 WS-* 規格的服務增加互通性 (Interoperability)。 這些繫結只會提供可正確套用至特定案例的選項,因此能夠節省時間。 如果其中一個繫結不符合您的需求,請建立自訂繫結。

Terminating Operation - 終止作業

在現有工作階段中被稱為最後訊息的作業。 在預設案例中,WCF 會在其中關聯著服務的工作階段關閉後回收服務物件及其內容。

Transport Security Mode - 傳輸安全性模式

安全性可以透過下列三個模式中的一個模式提供:傳輸模式、訊息安全性模式,以及使用訊息認證的傳輸模式。 傳輸安全性模式會指定傳輸層機制 (例如 HTTPS) 提供機密性、完整性和驗證。 在使用如 HTTPS 的傳輸時,這個模式的優點在於效能會更有效率,而且易於理解 (因為普遍使用在網際網路上)。 缺點是,這種類型的安全性是個別套用在通訊路徑上的每個躍點,因此通訊容易受到「攔截式」攻擊。

Transport with Message Credential Security Mode - 使用訊息認證的傳輸安全性模式

這個模式會使用傳輸層來提供訊息的機密性、驗證和完整性,同時每個訊息都會包含訊息接收者所需的多個認證 (宣告)。

Type Converter - 型別轉換子

CLR 型別可以與一個或多個 System.ComponentModel.TypeConverter 衍生型別相關聯,這些型別可將 CLR 型別的執行個體和其他型別的執行個體來回轉換。 型別轉換子透過 System.ComponentModel.TypeConverterAttribute 屬性來與 CLR 型別相關聯。 TypeConverterAttribute 可直接在 CLR 型別或在屬性上指定。 屬性上指定之型別轉換子的優先順序永遠高於屬性之 CLR 型別上指定之型別轉換子。

WCF Client - WCF 用戶端

WCF 用戶端是用戶端應用程式建構,會將服務作業公開為方法 (在您選擇的 .NET Framework 程式設計語言中,例如 Visual Basic 或 Visual C#)。 任何應用程式都可以裝載 WCF 用戶端,包括裝載服務的應用程式, 因此,您可以建立包含其他服務之 WCF 用戶端的服務。 藉由使用 ServiceModel 中繼資料公用程式工具 (Svcutil.exe),並將它指向發行中繼資料的執行中服務,就可以自動產生 WCF 用戶端。

Workflow Services - 工作流程服務

工作流程服務是做為工作流程實作的 WCF 服務。 工作流程包含訊息傳遞活動,這些活動包括傳送和 (或) 接收 WCF 訊息。

WS-*

一組發展中 Web 服務 (WS) 規格的縮寫,例如 WCF 中所實作的 WS-Security 與 WS-ReliableMessaging 等等。

XAML

eXtensible Application Markup Language

XAML Schema - XAML 結構描述

用來定義 XAML 自訂型別的標記結構描述。