【发布时间】:2015-10-16 09:04:02
【问题描述】:
如何仅在单个元素上设置 xsi:nil="true" 属性?使用运行时标志“SOAP_XML_NIL”,我将对其进行全局设置,因此它会影响每个属性。
谢谢
【问题讨论】:
如何仅在单个元素上设置 xsi:nil="true" 属性?使用运行时标志“SOAP_XML_NIL”,我将对其进行全局设置,因此它会影响每个属性。
谢谢
【问题讨论】:
要在类/结构成员为 NULL 时自动将 xsi:nil="true" 添加到 XML 有效负载中,您只需根据需要对成员进行注释(使用 1):
class ns__some_data
{
public:
int *some_member 1; // nillable pointer & element is marked as required
};
当设置ns__some_data::some_member = NULL 时,XML 将具有xsi:nil 属性,这是我认为你想要的:
<ns:some-data>
<some-member xsd:nil="true"/>
</ns:some-data>
为确保按预期工作,您需要升级到最新版本的 gSOAP(2.8.28 或更高版本)。
【讨论】: