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