色尼玛亚洲综合影院,亚洲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,比如GenericCollection,和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的支持,轉載需保留來源!

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

主站蜘蛛池模板: 岳西县| 漳浦县| 临沧市| 崇义县| 三明市| 库伦旗| 金门县| 苍溪县| 郑州市| 兴文县| 罗城| 措美县| 黔南| 定兴县| 江阴市| 蚌埠市| 勃利县| 平陆县| 丰顺县| 阜南县| 资源县| 泾川县| 庄河市| 县级市| 仁化县| 鸡东县| 宿州市| 湖口县| 积石山| 乐山市| 栖霞市| 九寨沟县| 呼伦贝尔市| 肃南| 彰化市| 南郑县| 贵德县| 沙坪坝区| 磐石市| 大英县| 伊金霍洛旗|