位置:首頁 > 軟件操作教程 > 編程開發(fā) > C# > 問題詳情

C# 定義WCF服務(wù)協(xié)定 數(shù)據(jù)協(xié)定

提問人:劉團(tuán)圓發(fā)布時間:2020-12-11

    要給服務(wù)定義數(shù)據(jù)協(xié)定,需要把DataContractAttribute特性應(yīng)用于類定義。這個特性在名稱空間System.Runtime.Serialization名稱空間中??墒褂孟卤硭镜膶傩耘渲盟?/p>

屬性

Name

用不同于類定義的名稱來命名數(shù)據(jù)協(xié)定,這個名稱在SOAP消息和服務(wù)元數(shù)據(jù)定義的客戶端數(shù)據(jù)對象上使用

Namespace

定義數(shù)據(jù)協(xié)定在SOAP消息中使用的名稱空間

IsRefercnce

影響序列化對象的方式。如果設(shè)置為mie,那么即使多次引用某個對象實(shí)例,仍然只序列化該對象實(shí)一次,有些情況下,這可能非常重要。默認(rèn)值是false

    當(dāng)需要與己有的SOAP消息格式交互操作時,Name和Namespace屬性非常重要(其他協(xié)定的類似名稱的屬性也是同理),但在其他情況下很可能不需要使用它們。

    數(shù)據(jù)協(xié)定中的每個類成員都必須使用DataMemberAttribute特性,它在名稱空間System. Runtime.Serialization中。這個特性具有下表所示的屬性。

說明

Name

指定序列化時數(shù)據(jù)成員的名稱(默認(rèn)為成員名稱)

IsRequired

指定成員是否必須顯示在SOAP消息中

Order

int值,指定序列化或反序列化成員的順序,如果一個成員必須在另一個成員之前出現(xiàn),這個順序就

是必需的。先處理Order較低的成員

EmitDe&ultValue

將其設(shè)Sfclse時,如果成員的值是默認(rèn)值,就禁止該成員包含在SOAP消息中


繼續(xù)查找其他問題的答案?

相關(guān)視頻回答
回復(fù)(0)
返回頂部