色尼玛亚洲综合影院,亚洲3atv精品一区二区三区,麻豆freexxxx性91精品,欧美在线91

[原創]談談WCF中的Data Contract(2):WCF Data Contract對Generic的支持

通過第一部分的介紹,我們可以體會到,WCF Data ContractCLR TypeNeutral Contract之間搭建了一座橋梁,彌合了.NET世界和廠商中立世界的差異。通過WCF Data Contract我們將CLR Data Type暴露成一個廠商中立的數據結構的描述,同樣通過WCF Data Contract我們將一個現有的CLR Data Type和既定的Neutral contract進行適配。

.NET中,基于Primary Type,比如Int32String等等,他們具有一個簡單的默認的序列化方式和結構,可以說他們不需要Data Contract。接下來我們主要討論的是一些相對比較特殊的、完全基于.NETData Type,比如Generic、Collection,和Dictionary。首先,我們結合例子來談談基于GenericData TypeData Contract。

假設我們需要創建一個用于處理一些單據(Bill)的Service,比如如Order BillSales Bill等。一般的單據都有一個單據頭(Header)和明細(Detail)列表,為此我們創建了一個GenericBill。并

namespace Artech.SpecialDataContract.Contract
{
    [DataContract]
    
public class Bill<THeader, TDetail>
    
{
        [DataMember]
        
public THeader Header
        
getset; }

        [DataMember]
        
public IList<TDetail> DetailList
        
getset; }
    }


    [DataContract]
    
public class OrderHeader
    
{
        [DataMember]
        
public Guid OrderID
        
getset; }

        [DataMember]
        
public DateTime OrderDate
        
getset; }
    }


    [DataContract]
    
public class OrderDetail
    
{
        [DataMember]
        
public Guid ProductID
        
getset; }

        [DataMember]
        
public int Quantity
        
getset; }
    }


}

NET技術[原創]談談WCF中的Data Contract(2):WCF Data Contract對Generic的支持,轉載需保留來源!

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

主站蜘蛛池模板: 梁平县| 墨玉县| 长春市| 武定县| 苍溪县| 武平县| 长阳| 红安县| 深水埗区| 廉江市| 读书| 志丹县| 麻江县| 岗巴县| 阿坝| 大庆市| 和静县| 文山县| 长沙市| 内乡县| 电白县| 河北区| 来凤县| 太湖县| 孟州市| 和硕县| 凤山市| 陆河县| 台湾省| 安福县| 高陵县| 兴隆县| 即墨市| 宝兴县| 柳林县| 墨江| 宁阳县| 营口市| 米林县| 泸溪县| 庆云县|