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

[原創(chuàng)]談?wù)刉CF中的Data Contract(2):WCF Data Contract對Generic的支持

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

.NET中,基于Primary Type,比如Int32String等等,他們具有一個簡單的默認的序列化方式和結(jié)構(gòu),可以說他們不需要Data Contract。接下來我們主要討論的是一些相對比較特殊的、完全基于.NETData Type,比如GenericCollection,和Dictionary。首先,我們結(jié)合例子來談?wù)劵?/span>GenericData TypeData Contract

假設(shè)我們需要創(chuàng)建一個用于處理一些單據(jù)(Bill)的Service,比如如Order BillSales Bill等。一般的單據(jù)都有一個單據(jù)頭(Header)和明細(Detail)列表,為此我們創(chuàng)建了一個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技術(shù)[原創(chuàng)]談?wù)刉CF中的Data Contract(2):WCF Data Contract對Generic的支持,轉(zhuǎn)載需保留來源!

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

主站蜘蛛池模板: 清新县| 含山县| 大连市| 南乐县| 和田市| 紫阳县| 襄城县| 清河县| 离岛区| 郁南县| 玉龙| 云南省| 河曲县| 边坝县| 三明市| 红安县| 吉木萨尔县| 油尖旺区| 双桥区| 台北县| 金昌市| 青川县| 墨脱县| 桑日县| 丹江口市| 云林县| 教育| 贵南县| 潞西市| 霍林郭勒市| 洪雅县| 辰溪县| 明溪县| 宜都市| 望奎县| 阜阳市| 确山县| 彭山县| 綦江县| 金沙县| 汝南县|