Joe Fawcett wrote:
[...]
XmlIgnore and Obsolete are two very different attributes, the former says do
not include this property in XML serialisation, the latter is marking the
property as obsolete.
Sound to me like the WSDL schema has payment type down as an enumeration or
the like with 0 an invalid choice.
Can you show the schema?
Here's part of it: it's 3,100 lines long or I'd post the lot!
<s:complexType name="Order">
<s:sequence>
<s:element minOccurs="1" maxOccurs="1" name="GrandTotal"
type="s:decimal" />
<s:element minOccurs="0" maxOccurs="1" name="IndividualKey"
type="tns:IndividualKey" />
<s:element minOccurs="0" maxOccurs="1" name="InvoiceAddress"
type="tns:Address" />
<s:element minOccurs="0" maxOccurs="1"
name="OrderItemGroupList" type="tns:ArrayOfOrderItemGroup" />
<s:element minOccurs="1" maxOccurs="1" name="SubTotal"
type="s:decimal" />
<s:element minOccurs="1" maxOccurs="1" name="Vat"
type="s:decimal" />
<s:element minOccurs="1" maxOccurs="1" name="PostageAmount"
type="s:decimal" />
<s:element minOccurs="0" maxOccurs="1" name="InvoiceNumber"
type="s:string" />
<s:element minOccurs="0" maxOccurs="1" name="OrderReference"
type="s:string" />
<s:element minOccurs="0" maxOccurs="1" name="IndividualName"
type="s:string" />
<s:element minOccurs="1" maxOccurs="1" name="DiscountAmount"
type="s:decimal" />
<s:element minOccurs="1" maxOccurs="1" name="OverrideTotal"
type="s:boolean" />
<s:element minOccurs="0" maxOccurs="1" name="OverrideReason"
type="s:string" />
<s:element minOccurs="0" maxOccurs="1"
name="OrderPaymentElements" type="tns:ArrayOfOrderPayment" />
</s:sequence>
</s:complexType>
<s:complexType name="OrderPayment">
<s:sequence>
<s:element minOccurs="1" maxOccurs="1" name="PaymentAmount"
type="s:decimal" />
<s:element minOccurs="1" maxOccurs="1" name="PaymentType"
type="tns:OrderPaymentType" />
<s:element minOccurs="0" maxOccurs="1" name="OrderReference"
type="s:string" />
</s:sequence>
</s:complexType>
<s:simpleType name="OrderPaymentType">
<s:restriction base="s:string">
<s:enumeration value="None" />
<s:enumeration value="DataCash" />
<s:enumeration value="ManualCash" />
<s:enumeration value="ManualCheque" />
<s:enumeration value="CreditCard" />
</s:restriction>
</s:simpleType>
Thanks
Edward