HOW TO:將物件序列化為 SOAP 編碼的 XML 資料流
程式碼範例
因為 SOAP 訊息是使用 XML 建立的,所以 XmlSerializer 可用來序列化類別並產生編碼的 SOAP 訊息。產生的 XML 會與全球資訊網協會 (www.w3.org) 之<Simple Object Access Protocol (SOAP) 1.1>文件中的第 5 節相符。當您建立透過 SOAP 訊息溝通的 XML Web 服務時,您可以將特殊 SOAP 屬性集套用至類別與類別成員以自訂 XML 資料流。如需屬性的列表,請參閱控制編碼 SOAP 序列化的屬性。
將物件序列化為 SOAP 編碼的 XML 資料流
使用 XML 結構描述定義工具 (Xsd.exe) 建立類別。
套用在 System.Xml.Serialization 中發現的一個或多個特殊屬性。請參閱<控制編碼 SOAP 序列化的屬性>中的清單。
藉由建立新的 SoapReflectionImporter 及使用已序列化類別的型別叫用 ImportTypeMapping 方法,來建立 XmlTypeMapping。
下列程式碼範例呼叫 SoapReflectionImporter 類型的 ImportTypeMapping 方法,以建立 XmlTypeMapping。
' Serializes a class named Group as a SOAP message. Dim myTypeMapping As XmlTypeMapping = (New SoapReflectionImporter(). _ ImportTypeMapping(GetType(Group))
// Serializes a class named Group as a SOAP message. XmlTypeMapping myTypeMapping = (new SoapReflectionImporter(). ImportTypeMapping(typeof(Group));
利用傳遞 XmlTypeMapping 給 XmlSerializer 建構函式的方式,來建立 XmlSerializer 類別的執行個體。
Dim mySerializer As XmlSerializer = New XmlSerializer(myTypeMapping)
XmlSerializer mySerializer = new XmlSerializer(myTypeMapping);
呼叫 Serialize 或 Deserialize 方法。
範例
' Serializes a class named Group as a SOAP message.
Dim myTypeMapping As XmlTypeMapping = (New SoapReflectionImporter(). _
ImportTypeMapping(GetType(Group))
Dim mySerializer As XmlSerializer = New XmlSerializer(myTypeMapping)
// Serializes a class named Group as a SOAP message.
XmlTypeMapping myTypeMapping = (new SoapReflectionImporter().ImportTypeMapping(typeof(Group));
XmlSerializer mySerializer = new XmlSerializer(myTypeMapping);
另請參閱
工作
HOW TO:序列化物件
HOW TO:還原序列化物件
HOW TO:覆寫已編碼的 SOAP XML 序列化
概念
控制編碼 SOAP 序列化的屬性
以 XML Web 服務進行 XML 序列化
其他資源
建置日期:2010-03-10