真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯網站制作重慶分公司

WCF集合契約等價是什么

本篇內容介紹了“WCF集合契約等價是什么”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠學有所成!

成都創(chuàng)新互聯公司-專業(yè)網站定制、快速模板網站建設、高性價比霸州網站開發(fā)、企業(yè)建站全套包干低至880元,成熟完善的模板庫,直接使用。一站式霸州網站制作公司更省心,省錢,快速模板網站建設找我們,業(yè)務覆蓋霸州地區(qū)。費用合理售后完善,十載實體公司更值得信賴。

在WCF中應用了CollectionDataContractAttribute屬性的集合稱之為定制數據契約集合,否則為非定制數據契約集合。不管是非定制數據契約集合還是定制數據契約集合,只要它們的數據契約名稱和循環(huán)元素的名稱都相同(如果是字典集合其Key和Value也要是相同的),我們就說它們是等價的。

由于非定制數據契約集合的數據契約以及循環(huán)元素的名稱由集合中的類型決定,所以非定制數據契約WCF集合契約等價遵守以下幾個規(guī)則WCF Data Contract之WCF集合契約等價:
◆相同類型的列表集合被認為具有相同的數據契約(協定)例如:List和int[]是等價的。
◆具有相同相同鍵和值類型的所有字典集合也被視為具有相同的數據契約(協定)
◆接口和實現該接口的具體集合類的數據契約是等價的。例如IList和List等價。
◆非泛型集合與Object類型的泛型WCF集合契約等價等價。例如:List與ArrayList等價,ArrayList與Object[]也是等價的。

這就是為什么上面的示例中,實現IList和ICollection的集合類型的數據契約名稱都是ArrayOfint的原因。例如下面兩個數據契約是等價的:

[DataContract(Name="Customer")] public class Customer1  {  [DataMember] public string customerName;  [DataMember] public Collection addresses;  [DataMember] public string[] telephones;  }  [DataContract(Name="Customer")] public class Customer2  {  [DataMember] public string customerName;  [DataMember] public ICollection addresses;  [DataMember] public List telephones;  }

注意:Collection和ICollection是等價的,同時string[]和List也是等價的。所以,針對Customer2的定義,我們可以將實現ICollection接口的任何集合類的實例賦給addresses。同樣,我們也可以利用在數據契約中定義集合接口的機制來將WCF不支持的集合類型來應用到我們的WCF應用中。也就是說我們可以將ReadOnlyCollection的實例賦給Customer2的addresses.

“WCF集合契約等價是什么”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業(yè)相關的知識可以關注創(chuàng)新互聯網站,小編將為大家輸出更多高質量的實用文章!


標題名稱:WCF集合契約等價是什么
當前地址:http://weahome.cn/article/poophe.html

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部