0
我正在開發一個新應用程序的GUI(WPF),該應用程序將發送各種SOAP請求並獲取將使用通用格式形成的SOAP響應。下面是一個示例迴應:尋求處理通用SOAP響應的建議
<SOAP-ENV:Body>
<TheResponse>
<MetaData>
<DataSchema>
<ColumnSchema type="decimal" ref="c0" name="min" />
<ColumnSchema type="decimal" ref="c1" name="max" />
</DataSchema>
</MetaData>
<Data>
<Item>
<c0>0</c0>
<c1>1</c1>
</Item>
</Data>
</TheResponse>
</SOAP-ENV:Body>
因此,您可以看到,SOAP響應將定義元數據,然後是實際數據。我需要根據請求/響應創建不同的對象。在這個例子中,對象有兩個屬性Min和Max,它們的值分別爲0和1。
如果我有,因爲我知道我需要的對象中定義的類,例如:
class MyClass
{
public decimal Min {get; set;}
public decimal Max {get; set;}
}
我怎麼會去反序列化SOAP響應創建合適的對象?
感謝您的幫助。
感謝您的提示。使用你列出的方法,我的和示例中的值是否會正確填充Min/Max屬性?是否知道將部分中的值鏈接到部分中的屬性名稱? –
Flack
2011-05-12 03:06:24
根據你的例子,我看到你的元數據(DataSchema)被定義爲一個XSD模式,用於生成一個用於在Soap消息中通過序列化傳輸數據的類。這允許將c0和c1的值加載到對象中。 我的答案的目的是嘗試並指導您避免編寫解析和XML並將XML轉換爲對象的代碼。 – Zamboni 2011-05-12 03:56:21