偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

WCF行為控制實質內(nèi)容簡要概述

開發(fā) 開發(fā)工具
WCF行為控制是在實際應用中一步不可或缺的操作技術。我們知道,在這些行為中,類型多樣化,我們需要對他們有一個熟練的掌握。

WCF開發(fā)插件的出現(xiàn),給開發(fā)人員帶來了非常不一樣的體驗。尤其是它獨特的特點更是令開發(fā)人員眼前一亮。在這里先來了解一下WCF行為控制的基本內(nèi)容。在完成服務契約設計和服務實現(xiàn)后,我們可以設置該服務的運行期行為(Behavior)。這些WCF行為控制包括 Service Behaviors、Endpoint Behaviors、Contract Behaviors、Operation Behaviors。#t#

以下就常用的行為使用,做些演示。

WCF行為控制之ServiceBehaviorAttribute & OperationBehaviorAttribute

這是兩個最常用的行為控制特性,可用于控制:

服務對象生命周期。

并發(fā)管理。

異步通訊。

配置文件參數(shù)。

事務。

元數(shù)據(jù)轉換。

會話(Session)周期。

  1. [ServiceContract]  
  2. public interface ICalculate  
  3. {  
  4. [OperationContract]  
  5. int Add(int a, int b);  
  6. }  
  7. [ServiceBehavior(InstanceContextModeInstanceContextMode=
    InstanceContextMode.PerCall)]  
  8. public class CalculateService : ICalculate  
  9. {  
  10. public int Add(int a, int b)  
  11. {  
  12. Console.WriteLine(this.GetHashCode());  
  13. return a + b;  
  14. }  
  15. }  
  16. public class WcfTest  
  17. {  
  18. public static void Test()  
  19. {  
  20. AppDomain.CreateDomain("Server").DoCallBack(delegate  
  21. {  
  22. ServiceHost host = new ServiceHost(typeof(CalculateService));  
  23. host.AddServiceEndpoint(typeof(ICalculate), new WSHttpBinding(), 
    "http://localhost:8080/calc");  
  24. host.Open();  
  25. });  
  26. ChannelFactory<ICalculate> factory = new ChannelFactory
    <ICalculate>(new WSHttpBinding(),   
  27. "http://localhost:8080/calc");  
  28. ICalculate o = factory.CreateChannel();  
  29. Console.WriteLine(o.Add(1, 2));  
  30. Console.WriteLine(o.Add(1, 2));  
  31. factory.Close();  
  32. }  

 

輸出:

  1. 30136159  
  2. 3  
  3. 41153804  

WCF行為控制之ServiceMetadataBehavior

用于開啟元數(shù)據(jù)獲取功能。只有使用該行為,客戶端才能通過 Svcutil.exe 或其他工具獲取服務信息,進而生成客戶端代理文件。

 

  1. ServiceHost host = new ServiceHost(typeof(CalculateService));  
  2. host.AddServiceEndpoint(typeof(ICalculate), new BasicHttpBinding(),
     "http://localhost:8080/calc");  
  3. ServiceMetadataBehavior behavior = new ServiceMetadataBehavior();  
  4. behavior.HttpGetEnabled = true;  
  5. behavior.HttpGetUrl = new Uri("http://localhost:8080/calc");  
  6. host.Description.Behaviors.Add(behavior);  
  7. host.Open(); 

 

WCF行為控制之ServiceDebugBehavior

開啟調(diào)試功能,如將服務器端的異常信息直接傳送給客戶端。

 

  1. ServiceHost host = new ServiceHost(typeof(CalculateService));  
  2. host.AddServiceEndpoint(typeof(ICalculate), new WSHttpBinding(), 
    "http://localhost:8080/calc");  
  3. host.Description.Behaviors.Find<ServiceDebugBehavior>()
    .IncludeExceptionDetailInFaults = true;  
  4. host.Open(); 

 

責任編輯:曹凱 來源: 博客園
相關推薦

2010-02-24 15:28:59

WCF ABC

2010-03-02 16:28:11

WCF發(fā)布訂閱

2010-03-02 14:41:00

WCF行為控制

2010-03-02 15:53:02

WCF服務合同

2010-02-26 10:46:12

WCF行為擴展

2010-03-02 17:55:37

WCF終結點地址

2010-02-25 17:04:54

WCF實例上下文

2009-06-16 13:25:02

JBoss和JMS

2010-02-24 14:20:27

WCF并發(fā)模型

2009-12-14 13:19:07

Ruby字符串

2010-03-18 13:46:10

無線USB技術

2010-01-27 10:52:15

Android垃圾回收

2009-11-17 15:02:27

Oracle客戶端

2009-11-06 14:08:06

WCF行為擴展

2010-03-02 09:24:22

WCF變更行為

2010-03-01 14:50:30

WCF行為類型

2009-12-18 19:07:33

2009-11-06 14:25:56

WCF接口

2011-03-14 15:52:50

Windows Azu

2009-03-16 09:16:13

行為擴展WCF.NET
點贊
收藏

51CTO技術棧公眾號