自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

WCF PreCal模式基本代碼示例解析

開發(fā) 開發(fā)工具
WCF PreCal模式的應(yīng)用,會(huì)每次都調(diào)用創(chuàng)建一個(gè)服務(wù)實(shí)例,在實(shí)際應(yīng)用中作用非常大。下面我們就來一起看看它的相關(guān)應(yīng)用技巧。

WCF實(shí)例上下文模式中,PreCal模式是一個(gè)比較重要的模式。我們?cè)谶@篇文章中將會(huì)針對(duì)WCF PreCal模式的相關(guān)概念及應(yīng)用技巧做一個(gè)詳細(xì)的闡述,希望朋友們能從中獲得一些幫助。

在WCF PreCal模式下,即便使用同一個(gè)代理對(duì)象,也會(huì)為每次調(diào)用創(chuàng)建一個(gè)服務(wù)實(shí)例。調(diào)用結(jié)束后,服務(wù)實(shí)例被立即釋放(非垃圾回收)。對(duì)于不支持 Session 的 Binding,如 BasicHttpBinding,其缺省行為就是 PreCall。

  1. [ServiceContract]  
  2. public interface IMyService  
  3. {  
  4. [OperationContract]  
  5. void Test();  
  6. }  
  7. [ServiceBehavior(InstanceContextModeInstanceContextMode = 
    InstanceContextMode.PerCall)]  
  8. public class MyServie : IMyService, IDisposable  
  9. {  
  10. public MyServie()  
  11. {  
  12. Console.WriteLine("Constructor:{0}", this.GetHashCode());  
  13. }  
  14. [OperationBehavior]  
  15. public void Test()  
  16. {  
  17. Console.WriteLine("Test:{0}", OperationContext.Current.SessionId);  
  18. }  
  19. public void Dispose()  
  20. {  
  21. Console.WriteLine("Dispose");  
  22. }  
  23. }  
  24. public class WcfTest  
  25. {  
  26. public static void Test()  
  27. {  
  28. AppDomain.CreateDomain("Server").DoCallBack(delegate  
  29. {  
  30. ServiceHost host = new ServiceHost(typeof(MyServie), 
    new Uri("http://localhost:8080/MyService"));  
  31. host.AddServiceEndpoint(typeof(IMyService), new WSHttpBinding(), "");  
  32. host.Open();  
  33. });  
  34. //-----------------------  
  35. IMyService channel = ChannelFactory<IMyService>.
    CreateChannel(new WSHttpBinding(),  
  36. new EndpointAddress("http://localhost:8080/MyService"));  
  37. using (channel as IDisposable)  
  38. {  
  39. channel.Test();  
  40. channel.Test();  
  41. }  
  42. }  

輸出:

  1. Constructor:30136159  
  2. Test:urn:uuid:df549447-52ba-4c54-9432-31a7a533d9b4  
  3. Dispose  
  4. Constructor:41153804  
  5. Test:urn:uuid:df549447-52ba-4c54-9432-31a7a533d9b4  
  6. Dispose 

以上就是我們?yōu)榇蠹医榻B的WCF PreCal模式的相關(guān)介紹。

【編輯推薦】

  1. WCF使用Nhibernate具體操作步驟圖解
  2. WCF枚舉實(shí)現(xiàn)技巧總結(jié)
  3. WCF異常處理各種方式詳解
  4. WCF方法重載相關(guān)實(shí)現(xiàn)技巧分享
  5. WCF跨域訪問相關(guān)問題解決方案
責(zé)任編輯:曹凱 來源: 博客園
相關(guān)推薦

2010-02-22 15:06:31

WCF信道監(jiān)聽器

2010-03-02 16:09:53

WCF框架

2010-02-25 15:49:05

WCF消息模式

2010-02-25 13:18:36

WCF單向協(xié)定

2010-03-02 14:41:00

WCF行為控制

2010-02-23 15:58:57

WCF Session

2010-02-05 10:23:09

C++基本函數(shù)

2010-03-02 17:43:31

WCF框架處理流程

2011-08-12 14:39:00

iPhoneSDK

2010-01-25 10:15:47

Android系統(tǒng)架構(gòu)

2009-12-07 15:41:51

PHP圖片加水印

2009-12-21 10:27:52

WCF基本概念

2010-02-23 16:32:29

WCF服務(wù)

2009-12-18 16:00:29

Ruby獲取當(dāng)前類名

2010-02-26 14:19:03

WCF用戶驗(yàn)證

2010-02-23 10:51:32

WCF Address

2010-03-03 13:32:08

Python壓縮文件

2010-03-02 09:24:22

WCF變更行為

2010-02-24 17:17:04

WCF宿主環(huán)境

2010-03-02 15:53:02

WCF服務(wù)合同
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)