新聞中心
WCF中有很多比較高深的應(yīng)用技巧是值得我們?cè)趯W(xué)習(xí)和實(shí)踐的過程中去深入研究的。那么,今天我們就先從WCF實(shí)例停用開始了解,從而使我們對(duì)這一開發(fā)工具有一個(gè)更加深入的了解程度。#t#

讓客戶滿意是我們工作的目標(biāo),不斷超越客戶的期望值來自于我們對(duì)這個(gè)行業(yè)的熱愛。我們立志把好的技術(shù)通過有效、簡(jiǎn)單的方式提供給客戶,將通過不懈努力成為客戶在信息化領(lǐng)域值得信任、有價(jià)值的長(zhǎng)期合作伙伴,公司提供的服務(wù)項(xiàng)目有:域名注冊(cè)、虛擬空間、營(yíng)銷軟件、網(wǎng)站建設(shè)、平和網(wǎng)站維護(hù)、網(wǎng)站推廣。
WCF實(shí)例停用只針對(duì)會(huì)話服務(wù)而言。單例服務(wù)雖然也可以應(yīng)用,但卻無效。
“會(huì)話實(shí)際要做的不僅是關(guān)聯(lián)客戶端消息,同時(shí)還要關(guān)聯(lián)托管了服務(wù)的上下文。啟動(dòng)會(huì)話時(shí),宿主會(huì)創(chuàng)建一個(gè)新的上下文。會(huì)話終止時(shí),上下文也隨之而終止。默認(rèn)情況下,上下文的生命周期與發(fā)布的服務(wù)實(shí)例的生命周期相同。然而,出于優(yōu)化的目的,WCF為服務(wù)設(shè)計(jì)者提供了一個(gè)分離兩種生命周期的選項(xiàng),該選項(xiàng)允許WCF獨(dú)立地停用實(shí)例,而不必依賴于它的上下文。實(shí)際上,WCF還允許不包含實(shí)例的上下文存在?!?/p>
這種實(shí)例管理技術(shù)稱為上下文停用(Context Deactivation)??刂粕舷挛耐S玫淖畛R娹k法是通過OperationBehavior特性的ReleaseInstanceMode屬性:
- public enum ReleaseInstanceMode
- {
- None, BeforeCall, AfterCall, BeforeAndAfterCall,
- }
- [AttributeUsage(AttributeTargets.Method)]
- public sealed class OperationBehaviorAttribute : Attribute,...
- {
- public ReleaseInstanceMode ReleaseInstanceMode
- {
- get;set;
- }
- //More members
- }
“通常,我們只需要將WCF實(shí)例停用應(yīng)用到部分服務(wù)方法上,而不是全部方法;或者為不同的方法設(shè)置不同的值?!崩纾?/p>
- class MyService : IMyContract,IDisposable
- {
- [OperationBehavior(ReleaseInstanceModeReleaseInstanceMode =
ReleaseInstanceMode.AfterCall)]- public void MyMethod( )
- {
- ...
- }
- public void MyOtherMethod( )
- {
- ...
- }
- public void Dispose( )
- {
- ...
- }
- }
以上就是對(duì)WCF實(shí)例停用的相關(guān)內(nèi)容的介紹。
本文名稱:WCF實(shí)例停用基本應(yīng)用技巧分享
瀏覽路徑:http://m.5511xx.com/article/dpspccc.html


咨詢
建站咨詢
