|
作為WCF中一個核心概念,終結點在不同的語境中實際上指代不同的對象。站在服務描述的角度,我們所說的終結點實際上是指ServiceEndpoint對象。如果站在WCF服務端運行時框架來說,終結點實際上指代的是終結點分發器(EndpointDispatcher)。而ServiceEndpoint與EndpointDispatcher是一一匹配的,并且前者是創建后者的基礎。而終結點分發器具有自己的運行,即分發運行時(DispatchRuntime)。
目錄
一、終結點分發器(EndpointDispatcher)
二、分發運行時(DispatchRuntime)
可擴展組件
認證與授權
服務實例上下文
會話關閉通知
同步上下文
消息檢驗
操作與操作選擇
可擴展屬性
授權
審核
事務與會話
未處理操作
SOAP ValidateMustUnderstand處理
并發控制
一、終結點分發器(EndpointDispatcher)
除了之前介紹的三個輔助信道分發器向匹配的終結點分發器實施消息路由的三個屬性(AddressFilter、ContractFilter和FilterPriority)之外,你還可以通過屬性ContractName和ContractNamespace得到服務契約的名稱和命名空間,以通過EndpointAddress屬性得到相應的終結點地址。將消息路由到該終結點分發器的信道分發器可以通過屬性ChannelDispatcher獲得。但是對于終結點分發器來說,其重要的還是通過屬性DispatchRuntime表示的分發運行時。
public class EndpointDispatcher{
//其他成員
public string ContractName { get; }
public string ContractNamespace { get; }
public MessageFilter AddressFilter { get; set; }
public MessageFilter ContractFilter { get; set; }
public int FilterPriority { get; set; }
public ChannelDispatcher ChannelDispatcher { get; }
public DispatchRuntime DispatchRuntime { get; }
public EndpointAddress EndpointAddress { get; }
}
NET技術:WCF服務端運行時架構體系詳解[下篇],轉載需保留來源!
鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。