|
作為WCF中一個(gè)核心概念,終結(jié)點(diǎn)在不同的語(yǔ)境中實(shí)際上指代不同的對(duì)象。站在服務(wù)描述的角度,我們所說(shuō)的終結(jié)點(diǎn)實(shí)際上是指ServiceEndpoint對(duì)象。如果站在WCF服務(wù)端運(yùn)行時(shí)框架來(lái)說(shuō),終結(jié)點(diǎn)實(shí)際上指代的是終結(jié)點(diǎn)分發(fā)器(EndpointDispatcher)。而ServiceEndpoint與EndpointDispatcher是一一匹配的,并且前者是創(chuàng)建后者的基礎(chǔ)。而終結(jié)點(diǎn)分發(fā)器具有自己的運(yùn)行,即分發(fā)運(yùn)行時(shí)(DispatchRuntime)。
目錄
一、終結(jié)點(diǎn)分發(fā)器(EndpointDispatcher)
二、分發(fā)運(yùn)行時(shí)(DispatchRuntime)
可擴(kuò)展組件
認(rèn)證與授權(quán)
服務(wù)實(shí)例上下文
會(huì)話關(guān)閉通知
同步上下文
消息檢驗(yàn)
操作與操作選擇
可擴(kuò)展屬性
授權(quán)
審核
事務(wù)與會(huì)話
未處理操作
SOAP ValidateMustUnderstand處理
并發(fā)控制
一、終結(jié)點(diǎn)分發(fā)器(EndpointDispatcher)
除了之前介紹的三個(gè)輔助信道分發(fā)器向匹配的終結(jié)點(diǎn)分發(fā)器實(shí)施消息路由的三個(gè)屬性(AddressFilter、ContractFilter和FilterPriority)之外,你還可以通過(guò)屬性ContractName和ContractNamespace得到服務(wù)契約的名稱和命名空間,以通過(guò)EndpointAddress屬性得到相應(yīng)的終結(jié)點(diǎn)地址。將消息路由到該終結(jié)點(diǎn)分發(fā)器的信道分發(fā)器可以通過(guò)屬性ChannelDispatcher獲得。但是對(duì)于終結(jié)點(diǎn)分發(fā)器來(lái)說(shuō),其重要的還是通過(guò)屬性DispatchRuntime表示的分發(fā)運(yùn)行時(shí)。
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技術(shù):WCF服務(wù)端運(yùn)行時(shí)架構(gòu)體系詳解[下篇],轉(zhuǎn)載需保留來(lái)源!
鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請(qǐng)第一時(shí)間聯(lián)系我們修改或刪除,多謝。