并不是所有Binding支持會話(session)功能。
比如basicHTTP就不支持session功能。
參考文章:
http://www.codeproject.com/Articles/86007/ways-to-do-WCF-instance-management-Per-call-Per
另外參考以下文字:
以下文字來自http://www.cnblogs.com/TivonStone/archive/2011/05/18/2050407.html
SessionMode:設置會話的模式(默認情況下是Allowed)
是客戶端代理與服務器之間的會話模式,同樣也有三種類型:Allowed-允許會話、NotAllowed-不允許會話、Required-要求會話(需要有支持會話的Binding支持,WsHttpBinding、NetTcpBinding等)
若要設計一個會話契約,我們建議使用Required 方式,而不是默認值Allowed。
SessionMode.Required值要求必須使用傳輸層會話,但應用層會話卻不是必要的,如果服務終結點的綁定沒有維持一個傳輸層會話,就不能為這樣的服務契約配置SessionMode.Required。這一約束條件會在裝載服務時進行驗證。但是,我們?nèi)匀豢梢詫⒎张渲脼閱握{(diào)服務,服務實例會在每次客戶端調(diào)用期間創(chuàng)建與銷毀實例。只有當服務被配置為會話服務時,服務實例才會存活于整個客戶端會話中。
InstanceContextMode:指定可用來處理包含在傳入信息中的調(diào)用的服務實例數(shù)(默認情況下是PerSession)
為服務端實現(xiàn)服務契約類的實例模式,有三種類型,分別為:
PerCall-每次服務操作調(diào)用創(chuàng)建一次,調(diào)用完后進行銷毀;
PerSession-同一個會話期間創(chuàng)建一次,客戶端代理第一次操作(IsInitiating = true)調(diào)用創(chuàng)建,調(diào)用代理的Close方法銷毀或者調(diào)用IsTerminating服務操作銷毀;
Single-服務只會創(chuàng)建一次,服務開始時創(chuàng)建,服務完成時銷毀
(順便說一下,Session的支持是通過建立Sessionful Channel來實現(xiàn)的,但是并不是所有的Binding都支持Session,比如BasicHttpBinding就不支持Session)
創(chuàng)新互聯(lián)www.cdcxhl.cn,專業(yè)提供香港、美國云服務器,動態(tài)BGP最優(yōu)骨干路由自動選擇,持續(xù)穩(wěn)定高效的網(wǎng)絡助力業(yè)務部署。公司持有工信部辦法的idc、isp許可證, 機房獨有T級流量清洗系統(tǒng)配攻擊溯源,準確進行流量調(diào)度,確保服務器高可用性。佳節(jié)活動現(xiàn)已開啟,新人活動云服務器買多久送多久。
當前標題:關于WCF的InstanceContextMode,與會話相關-創(chuàng)新互聯(lián)
網(wǎng)頁URL:http://chinadenli.net/article46/ddeihg.html
成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供電子商務、建站公司、服務器托管、關鍵詞優(yōu)化、品牌網(wǎng)站制作、動態(tài)網(wǎng)站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容