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

WCF行為控制代碼示例應(yīng)用解讀

開發(fā) 開發(fā)工具
WCF行為控制在實(shí)際應(yīng)用中是一個(gè)作用比較的操作技術(shù)。我們今天就會通過這篇文章中介紹的內(nèi)容為大家詳細(xì)講解有關(guān)內(nèi)容。

WCF開發(fā)工具中有很多比較重要的應(yīng)用技術(shù)及供功能特點(diǎn)需要我們熟練應(yīng)用。在這里我們將會為大家詳細(xì)介紹一下有關(guān)WCF行為控制的相關(guān)內(nèi)容。希望大家可以從這里介紹的內(nèi)容中獲得相關(guān)幫助。#t#

在完成服務(wù)契約設(shè)計(jì)和服務(wù)實(shí)現(xiàn)后,我們可以設(shè)置該服務(wù)的運(yùn)行期行為(Behavior)。這些WCF行為控制包括 Service Behaviors、Endpoint Behaviors、Contract Behaviors、Operation Behaviors。

有關(guān)所有行為的說明,可以查看 ms-help://MS.MSSDK.1033/MS.NETFX30SDK.1033/WCF_con/html/5c5450ea-6af1-4b75-a267-613d0ac54707.htm。

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

ServiceBehaviorAttribute & OperationBehaviorAttribute

這是兩個(gè)最常用的WCF行為控制特性,可用于控制:

服務(wù)對象生命周期。

并發(fā)管理。

異步通訊。

配置文件參數(shù)。

事務(wù)。

元數(shù)據(jù)轉(zhuǎn)換。

會話(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  
  4. 3  
  5. ServiceMetadataBehavior 

 

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

 

  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();  
  8. ServiceDebugBehavior 

 

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

 

  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(); 

以上就是對WCF行為控制的相關(guān)介紹。

責(zé)任編輯:曹凱 來源: 豆豆網(wǎng)
相關(guān)推薦

2010-03-02 16:15:59

WCF控制事務(wù)

2010-02-25 09:36:28

WCF行為控制

2010-02-26 13:26:55

WCF消息編碼器

2010-02-26 10:46:12

WCF行為擴(kuò)展

2010-02-24 13:38:18

WCF PreCal模

2010-03-03 13:32:08

Python壓縮文件

2010-03-01 16:04:31

WCF服務(wù)契約

2010-02-22 15:06:31

WCF信道監(jiān)聽器

2010-02-25 17:22:39

WCF服務(wù)行為

2009-11-06 14:08:06

WCF行為擴(kuò)展

2009-12-08 14:28:16

XTemplate +

2009-12-08 18:14:53

WCF Service

2010-02-04 16:07:39

C++回調(diào)函數(shù)

2010-01-04 17:03:27

Silverlight

2010-03-02 09:24:22

WCF變更行為

2010-03-01 14:50:30

WCF行為類型

2010-01-08 10:48:05

VB.NET多線程

2010-01-19 17:03:25

VB.NET可執(zhí)行語句

2010-01-05 09:57:34

.NET Framew

2009-12-02 10:49:59

PHP解析XML元素結(jié)
點(diǎn)贊
收藏

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