日本综合一区二区|亚洲中文天堂综合|日韩欧美自拍一区|男女精品天堂一区|欧美自拍第6页亚洲成人精品一区|亚洲黄色天堂一区二区成人|超碰91偷拍第一页|日韩av夜夜嗨中文字幕|久久蜜综合视频官网|精美人妻一区二区三区

RELATEED CONSULTING
相關咨詢
選擇下列產(chǎn)品馬上在線溝通
服務時間:8:30-17:00
你可能遇到了下面的問題
關閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
WCF集合類型各種限制于規(guī)則介紹

WCF開發(fā)插件中,有很多內(nèi)容值得我們?nèi)ド钊氲难芯?。我們需要在不斷的實踐中去積累應用技巧,來滿足我們的應用需求。在這里我們就為大家介紹一下其中一個比較基礎的知識,WCF集合類型的相關概念。#t#

創(chuàng)新互聯(lián)建站10多年企業(yè)網(wǎng)站制作服務;為您提供網(wǎng)站建設,網(wǎng)站制作,網(wǎng)頁設計及高端網(wǎng)站定制服務,企業(yè)網(wǎng)站制作及推廣,對宣傳片制作等多個行業(yè)擁有多年的網(wǎng)站運維經(jīng)驗的網(wǎng)站建設公司。

WCF集合類型的要求限制

不是所有的集合類型都可以在WCF中使用,只有滿足以下要求才可以使用:

該集合類型有一個缺省的構造函數(shù)

該集合類型有一個名為Add的方法

這是因為在反序列化集合類型時,WCF框架首先調(diào)用該集合類型的無參數(shù)的構造函數(shù),然后通過非靜態(tài)的Add方法來將循環(huán)元素增加到集合中。所以以上限制主要是針對反序列化而設定的。

WCF集合類型中的一些高級規(guī)則

WCF框架在序列化時支持集合的集合,也支持數(shù)組的數(shù)組(交錯數(shù)組),但不支持多唯數(shù)組。

字節(jié)數(shù)組和 XmlNode 數(shù)組是特殊的數(shù)組類型,將被視為基元,而不是集合。 序列化字節(jié)數(shù)組會產(chǎn)生單個包含一個 Base64 編碼數(shù)據(jù)塊的 XML 元素,而不是為每個字節(jié)都生成一個單獨的元素。(筆者認為這是為了性能的考慮才這么處理的。)

如果集合類型實現(xiàn)了IXMLSerializable接口,假設類型為MyType:IList,IXMLSerializable{…},WCF框架將根據(jù)在數(shù)據(jù)契約中聲明的類型來進行序列化,如果聲明的是集(接口)如IList,那么該類型將被認為是列表集合來序列化,如果聲明的是IXMLSerializable,那么將按照IXMLSerializable來進行序列化,當然需要將該類型加到KnowType類型列表中。如果聲明的是該類型本身(如MyType),那么將按照IXMLSerializable的規(guī)則來進行序列化。

在對集合進行序列化時,將調(diào)用集合類的GetEnumerator 方法來得到集合的內(nèi)容,在反序列化時將首先調(diào)用該集合類型的無參數(shù)的構造函數(shù),然后通過非靜態(tài)的Add方法來將循環(huán)元素增加到集合中。(注:雖然這與大家在MSDN的幫助文檔中看到的不同,認為字典集合將調(diào)用get_Keys和get_Values,以及IList將調(diào)用索引器,但筆者使用VS2008驗證時沒有得到以上方法被調(diào)用的結(jié)論,所以筆者認為是MSDN文檔滯后或有誤,如果各位看官能得到和MSDN吻合的結(jié)論麻煩告訴一聲。)

如果集合類型同時應用了Serialized屬性或?qū)崿F(xiàn)了ISerializable接口,WCF框架將忽略它們;但是如果集合類型不滿足集合類型要求(例如缺少Add)方法,那么將按照Serialized或ISerializable來處理;但如果你對該集合同時應用了CollectionDataContract屬性而且又不滿足集合要求,那么將拋出InvalidDataContractException,而不是按照Serialized或ISerializable來處理。

不能向?qū)崿F(xiàn)了IXmlSerializable接口的類型使用CollectionDataContractAttribute屬性,否則會拋出InvalidDataContractException.向非集合應用CollectionDataContractAttribute屬性以及非字典集合指定KeyName或者ValueName屬性也都將拋出此異常。

以上就是對WCF集合類型的相關介紹。


名稱欄目:WCF集合類型各種限制于規(guī)則介紹
當前鏈接:http://www.dlmjj.cn/article/djjcjio.html