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

在WCF实例上下文模式中,PreCal模式是一个比较重要的模式。我们在这篇文章中将会针对WCF PreCal模式的相关概念及应用技巧做一个详细的阐述,希望朋友们能从中获得一些帮助。

让客户满意是我们工作的目标,不断超越客户的期望值来自于我们对这个行业的热爱。我们立志把好的技术通过有效、简单的方式提供给客户,将通过不懈努力成为客户在信息化领域值得信任、有价值的长期合作伙伴,公司提供的服务项目有:空间域名、虚拟主机、营销软件、网站建设、市中网站维护、网站推广。

在WCF PreCal模式下,即便使用同一个代理对象,也会为每次调用创建一个服务实例。调用结束后,服务实例被立即释放(非垃圾回收)。对于不支持 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.
    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 

以上就是我们为大家介绍的WCF PreCal模式的相关介绍。

【编辑推荐】

  1. WCF使用Nhibernate具体操作步骤图解
  2. WCF枚举实现技巧总结
  3. WCF异常处理各种方式详解
  4. WCF方法重载相关实现技巧分享
  5. WCF跨域访问相关问题解决方案

本文题目:WCF PreCal模式基本代码示例解析
本文URL:http://www.shufengxianlan.com/qtweb/news35/94235.html

网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联