以下術語是為 Windows Communication Foundation 文件所定義的。
條款
| 術語 | Definition |
|---|---|
| address | 指定接收訊息的位置。 它被指定為統一資源識別碼(URI)。 URI 結構部分指定了用於存取該位址的傳輸機制,例如 HTTP 和 TCP。 URI 的階層部分包含一個獨特位置,其格式依傳輸機制而定。 |
| 應用程式端點 | 應用程式所暴露的端點,對應於應用程式實作的服務合約。 |
| 行為 | 行為是一種元件,負責控制服務、端點、特定操作或用戶端的各種執行時層面。 行為依範疇分組:常見行為影響所有端點,服務行為僅影響服務相關面向,端點行為僅影響端點相關屬性,操作層級行為影響特定操作。 |
| 繫結 | 定義用於與WCF服務通訊的通訊協定。 它由一組稱為綁定元素的元件組成,這些元件層層疊加以建立通訊基礎設施。 詳見終點。 |
| 通道 | 一個具體的結合元素實作。 綁定代表該配置,通道則是與該配置相關的實作。 因此,每個結合元素都有一條通道。 通道層疊,形成綁定的具體實作:通道堆疊。 |
| 基於權利要求的安全性 | 允許基於主張授權存取受保護資源。 |
| 用戶端應用程式 | 用戶端應用程式是一個與一個或多個端點交換訊息的程式。 用戶端應用程式首先建立一個 WCF 用戶端的實例,並呼叫該用戶端的方法。 值得注意的是,單一應用程式可以同時是客戶端與服務。 |
| 編碼 | 允許開發者嚴格控制服務或客戶端的所有元件,且設定過程中的任何設定都能被檢查,必要時可被程式碼覆蓋。 應用程式的控制可以透過編碼、設定,或兩者結合來完成。 |
| 組態 | 設定的優點是允許開發者以外的人(例如網路管理員)在程式碼撰寫後設定客戶端與服務參數,而無需重新編譯。 設定不僅讓你能設定端點位址等數值,還能透過新增端點、綁定和行為來進一步控制。 應用程式的控制可以透過設定、編碼,或兩者結合來完成。 |
| 合約 | 合約是針對特定類型合約所提供的支援條款。 例如,服務合約是對一組作業的規範。 在 WCF 中,契約有一個階層結構,並鏡像於位於 System.ServiceModel.Description 命名空間的描述物件中。 服務合約是WCF中最大的合約範圍。 服務合約中的每個服務操作都有一個操作合約,該合約規定該操作可以交換的訊息(包括故障訊息)以及可交換的方向。 操作中的每個訊息都有訊息合約,即 SOAP 訊息信封結構的規範,每個訊息合約都有資料合約,指定訊息中包含的資料結構。 |
| 資料合約 | 服務所使用的資料類型必須在元資料中描述,以便其他服務能與該服務互通。 資料型別的描述稱為資料合約,這些型別可用於訊息的任何部分,例如參數或回傳類型。 如果服務只使用簡單型別,則無需明確使用資料合約。 |
| 宣告式應用 | 一個描述足夠到可以在執行時建立而無需執行命令式指令的應用程式。 |
| 端點 | 包含一個地址、一個綁定,以及一個用於與 WCF 服務通訊的合約。 |
| 端點位址 | 允許你為服務中的每個端點建立獨特的端點位址,或在特定條件下跨端點共享同一位址。 |
| 過失契約 | 故障合約可與服務操作相關聯,以表示可回傳給呼叫者的錯誤。 一個操作可以有零或多個錯誤。 這些錯誤是 SOAP 錯誤,在程式設計模型中被建模為例外。 該例外會被轉換成 SOAP 錯誤,然後可以傳送給用戶端。 |
| 裝載 | 服務必須以某種程序作為託管。 主機是一種控制服務生命週期的應用程式。 服務可以自行架設,也可以由現有的託管流程管理。 |
| 主機流程 | 主機程序是一種設計用來承載服務的應用程式。 這些包括網際網路資訊服務(IIS)、Windows 啟用服務(WAS)以及 Windows 服務。 在這些託管情境中,主機控制服務的壽命。 例如,使用 IIS 你可以建立一個虛擬目錄,裡面包含服務組件和設定檔。 當收到訊息時,IIS 會啟動服務並控制其壽命。 |
| 啟動作業 | 一個被稱為新會話第一個操作的操作。 非發起操作只能在至少呼叫一個啟動操作後呼叫。 |
| 實例化模型 | 服務有實例化模型。 有三種實例化模型:「單一」,即單一 CLR 物件服務所有用戶端;每通話」,其中會建立一個新的 CLR 物件來處理每個客戶端通話;以及「每個會話」,即建立一組 CLR 物件,分別對應每個獨立會話。 實例化模型的選擇取決於應用程式需求及服務的預期使用模式。 |
| 訊息 | 訊息是一個自包含的資料單元,可能由多個部分組成,包括主體和標頭。 |
| 訊息合約 | 訊息合約描述訊息的格式。 例如,它宣告訊息元素是否應該放在標頭中而非正文中,訊息中哪些元素應適用何種安全等級,等等。 |
| 訊息安全模式 | 訊息安全模式規定透過實作一項或多項安全規範來提供安全性。 每則訊息都包含必要的機制,在傳輸過程中提供安全防護,並使接收者能偵測竄改行為並解密訊息。 從這個角度來看,安全性被封裝在每則訊息中,提供跨多跳的端對端安全。 由於安全資訊成為訊息的一部分,因此也可以在訊息中加入多種憑證(稱為聲明)。 此方法的優點是訊息能安全地通過任何傳輸,包括起點與目的地間的多重傳輸。 此方法的缺點是所採用的密碼機制過於複雜,導致效能影響。 |
| 中繼資料 | 服務的元資料描述了外部實體需要理解以與服務溝通的服務特性。 ServiceModel Metadata Utility Tool(Svcutil.exe)可以消耗這些元資料,產生 WCF 用戶端及其相關設定,讓用戶端應用程式可用來與服務互動。 服務所揭露的元資料包括定義服務資料合約的 XML 結構文件,以及描述服務方法的 WSDL 文件。 啟用後,WCF 會透過檢查服務及其端點自動產生服務的元資料。 要從服務發布元資料,您必須明確啟用該元資料行為。 |
| 作業合約 | 操作合約定義了操作的參數與回傳類型。 在建立定義服務合約的介面時,你會透過對合約中每個方法定義套用 T:System.ServiceModel.OperationContractAttribute 屬性來表示操作合約。 這些操作可以建模為對單一訊息回傳單一訊息,或是將一組型別回傳一個型別。 在後者情況下,系統會決定該操作交換訊息的格式。 |
| 投影 | 數據在線上的呈現。 例如,SOAP 投影以 SOAP 信封形式傳送訊息,而 Web 投影則以 JSON 格式傳送訊息。 |
| 安全性 | WCF 的安全包括機密性(加密訊息以防止竊聽)、完整性(偵測訊息被竄改的手段)、認證(驗證伺服器與客戶端的手段)以及授權(資源存取的控制)。 這些功能可透過利用現有的安全機制(如 TLS over HTTP,亦稱為 HTTPS)或實作一項或多項 WS-* 安全規範來提供。 |
| 自架服務 | 自架服務是指在開發者所建立的流程應用程式中運行的服務。 開發者控制其壽命、設定服務屬性、開啟服務(使其進入監聽模式),然後關閉服務。 |
| 服務 | 一個程式或程序,會暴露一個或多個端點,每個端點會暴露一個或多個操作。 |
| 服務合約 | 服務合約將多個相關作業串連成一個功能單元。 合約可以定義服務層級設定,例如服務的命名空間、對應的回調合約及其他相關設定。 在大多數情況下,合約是透過建立您所選擇的程式語言介面,並將 T:System.ServiceModel.ServiceContractAttribute 屬性套用到介面上來定義的。 實際的服務程式碼是透過實作介面來產生的。 |
| 服務作業 | 服務操作是服務程式碼中定義的一個程序,用以實作該操作的功能。 此操作以 WCF 用戶端的方法形式暴露給客戶端。 該方法可以回傳一個值,並可選擇使用一定數量的參數,或不接受參數且不回傳回應。 例如,作為「Hello」的操作可用來通知客戶端的存在,並開始一連串操作。 |
| 系統提供的綁定 | WCF 包含多種系統提供的綁定。 這些是針對特定情境優化的結合元素集合。 例如,T:System.ServiceModel.WSHttpBinding 設計上是為了與實作各種 WS-* 規範的服務互通而設計。 這些綁定只提供能正確套用於特定情境的選項,節省時間。 如果這些裝訂不符合你的需求,你可以自己製作客製化裝訂。 |
| 終止運作 | 一個在現有會話中被呼叫的最後訊息的操作。 在預設情況下,WCF 會在該服務所關聯的會話關閉後,回收服務物件及其上下文。 |
| 傳輸安全模式 | 安全性可透過三種模式之一提供:傳輸模式、訊息安全模式,以及帶訊息憑證傳輸模式。 傳輸安全模式規定由傳輸層機制(如 HTTPS)提供機密性、完整性與認證。 使用像 HTTPS 這樣的傳輸方式時,這種模式的優點是效能高,且因其在網際網路上的普及而廣為人知。 缺點是這種安全性會在通訊路徑的每一跳分別套用,使通訊容易受到「中間人」攻擊。 |
| 具備訊息憑證安全模式的傳輸 | 此模式利用傳輸層提供訊息的機密性、認證與完整性,而每個訊息可包含接收者所需的多項憑證(聲明)。 |
| 類型轉換器 | CLR 類型可以與一個或多個 System.ComponentModel.TypeConverter 衍生型別相關聯,這些型別能將 CLR 類型的實例轉換到其他類型的實例或互換。 型別轉換器會透過 System.ComponentModel.TypeConverterAttribute 屬性與 CLR 類型關聯。 TypeConverterAttribute 可以直接在 CLR 類型或屬性上指定。 以某屬性指定的類型轉換器,總是優先於以該性質的 CLR 類型為基準的類型轉換器。 |
| WCF 用戶端 | WCF 用戶端是一種客戶端-應用程式結構,將服務操作以方法的形式揭露(在您選擇的 .NET Framework 程式語言中,如 Visual Basic 或 Visual C#)。 任何應用程式都可以承載 WCF 用戶端,包括承載服務的應用程式。 因此,可以建立包含其他服務 WCF 用戶端的服務。 WCF 用戶端可透過使用 ServiceModel Metadata Utility Tool (Svcutil.exe) 自動產生,並指向發布元資料的執行服務。 |
| 工作流程服務 | 工作流程服務是一種以工作流程形式實作的 WCF 服務。 工作流程包含發送及/或接收 WCF 訊息的訊息活動。 |
| WS-* | 這是對越來越多的網路服務(WS)規範的簡稱,例如 WS-Security、WS-ReliableMessaging 等,這些規範皆實作於 WCF 中。 |
| XAML | 可擴充應用程式標記語言 |
| XAML 架構 | 一種用於定義 XAML 自訂型別的標記結構。 |