成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

WCF服務合同基本內容概述

開發(fā) 開發(fā)工具
WCF服務合同主要幫助我們描述一下再服務上都執(zhí)行了哪些操作。我們將會在這篇文章中為大家詳細介紹一下這方面的相關知識。

WCF是一款功能強大的開發(fā)工具,可以幫助開發(fā)人員打造一款跨平臺的互聯(lián)解決方案。在WCF中,所有的服務都暴露合同。合同是一種描述服務所實現(xiàn)功能的平臺中立的標準的方式。WCF定義了四種類型的合同:#t#

· 服務合同描述你可以在服務上執(zhí)行哪些操作。

· 數(shù)據(jù)合同定義哪些數(shù)據(jù)類型被傳入和傳出服務。WCF為內置類型定義隱式合同,例如int和string,但是你可以容易地為定制類型定義顯式的選入式數(shù)據(jù)合同。

· 錯誤合同定義哪些錯誤將被該服務所激發(fā),以及該服務怎樣處理錯誤信息和把如何把它們傳播到客戶端。

· 消息合同允許服務直接與消息進行交互。消息合同可以被類型化或非類型化,并且有點類似于CLR中的遲綁定調用。不過,消息合同很少為SOA開發(fā)者所用。

在這4種類型的合同中,本文將集中討論服務合同。

你可以使用ServiceContractAttribute來定義一個服務合同,并且你可以把該屬性應用于一個接口或一個類,如列表1(見本文相應下載源碼)所示。

WCF服務合同獨立于接口或類可見性-公共或內部可見性是一個CLR概念,而不是WCF概念。在一個內部接口上應用ServiceContractAttribute將把該接口暴露為一個公共服務合同(可以跨越服務邊界進行消費)。沒有ServiceContractAttribute的話,該接口對WCF客戶端是不可見的,這與面向服務的宗旨一致(服務邊界是顯式的)。為了強制實現(xiàn)這一點,所有的合同必須是嚴格選入的。

OperationContractAttribute僅能被應用到方法(而不是屬性,索引器或事件,這都是一些CLR概念)中。OperationContractAttribute把一個合同方法暴露為在服務合同上執(zhí)行的一種邏輯操作。該接口上的其它不具有OperationContractAttribute屬性的方法不會成為合同的一部分。這可以強制實現(xiàn)顯式的服務邊界,并且,對于操作本身來說,保持一種選入模型。注意,合同操作獨立于方法可見性。列表1展示了通過定義一個合同接口把WCF服務合同與其實現(xiàn)分離開來的***應用。

另外,你還可以直接把ServiceContractAttribute和OperationContractAttribute應用于類,在這種情況下,WCF使用OperationContractAttribute從類中推斷出一個服務合同和方法。這是一種應該盡量避免使用的技術:

 

  1. //盡量避免使用  
  2. [ServiceContract]  
  3. class MyService  
  4. {  
  5. [OperationContract] //可見性并不要緊  
  6. string MyMethod(string text)  
  7. {  
  8. return "Hello " + text;  
  9. }  
  10. public string MyOtherMethod(string text)  
  11. {  
  12. return "Cannot call this method over WCF";  
  13. }  
  14. }  

這個ServiceContractAttribute把CLR接口(或推斷的接口)映射到一個技術中立的WCF合同上。通過派生和實現(xiàn)多個帶有ServiceContractAttribute的接口,單個類可以支持多個合同。類能夠通過隱式或顯式方式實現(xiàn)這個接口,因為該方法可見性對WCF沒有任何影響。然而,存在許多實現(xiàn)約束:避免使用參數(shù)化的構造器,因為WCF僅使用默認的構造器。盡管該類能夠使用內部屬性,索引器和靜態(tài)成員,但是沒有WCF客戶端能夠存取它們。

以上就是我們?yōu)榇蠹医榻B的有關WCF服務合同的相關內容。

責任編輯:曹凱 來源: qqread.com
相關推薦

2010-03-02 17:55:37

WCF終結點地址

2010-02-25 17:51:04

WCF服務地址

2010-02-25 17:04:54

WCF實例上下文

2010-02-25 15:49:05

WCF消息模式

2010-01-28 15:33:37

Android程序架構

2010-02-06 13:58:13

C++ Bost庫

2010-02-02 15:12:09

C++ explici

2010-02-05 13:35:19

C++虛析構函數(shù)

2010-02-25 17:57:26

WCF服務合同

2010-01-04 15:21:37

Silverlight

2017-10-25 06:50:27

數(shù)據(jù)科學數(shù)據(jù)數(shù)據(jù)分析

2010-03-05 11:53:20

Python命名約定

2010-04-22 09:36:56

Oracle數(shù)據(jù)字典

2010-02-04 15:51:07

C++迭代器

2010-03-03 15:26:54

Python編碼規(guī)范

2010-02-05 10:08:55

C++名字空間

2010-05-11 14:19:52

MySQL 5.0

2010-04-12 12:52:54

WiMAX無線技術

2010-02-25 09:36:28

WCF行為控制

2010-02-03 15:06:02

C++可變參數(shù)表
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 欧美极品视频在线观看 | 欧洲av一区 | 国产激情视频在线观看 | 国产一区二区毛片 | 请别相信他免费喜剧电影在线观看 | 久久大| 免费成人高清在线视频 | 91玖玖| 91精品国产一区二区三区香蕉 | 久草热线 | 91观看 | 日韩中字幕 | 日本三级在线 | 久久www免费视频 | 伊人免费网 | 欧美 日韩 国产 成人 在线 | 国产高潮好爽受不了了夜夜做 | 久久网站免费视频 | 一区二区三区在线免费观看 | 毛片免费在线 | 久久精品国产亚洲夜色av网站 | 在线国产一区 | 欧美一级黄色免费 | 波多野结衣先锋影音 | 亚洲综合在 | 黄a网站 | 91久久精品一区二区二区 | 影音先锋欧美资源 | 亚洲欧美日韩网站 | 国产免费观看久久黄av片涩av | 成人h免费观看视频 | 密室大逃脱第六季大神版在线观看 | 国产日韩欧美91 | 亚洲成人午夜电影 | 波多野结衣在线观看一区二区三区 | 亚洲国产精品成人综合久久久 | 欧美精品久久 | 9色视频在线 | 亚洲精品一区二三区不卡 | 在线视频成人 | 精品一区二区三区在线视频 |