Ниже приведена схема услуги.
<xs:element name="StartDate" type="tns:DateType">
<xs:annotation>
<xs:documentation>The start date of the planning item in question</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="DateType">
<xs:annotation>
<xs:documentation>
0 - Hard Date (Use the date defined by the year, month and day attributes
2 - Retirement
3 - Death
4 - Disability
5 - Long Term Care
</xs:documentation>
</xs:annotation>
<xs:sequence>
<xs:element name="Date">
<xs:complexType>
<xs:attribute name="date_type" use="optional" default="0">
<xs:simpleType>
<xs:restriction base="xs:int">
<xs:enumeration value="0">
<xs:annotation>
<xs:documentation>Hard Date (Use the date defined by the year, month and day attributes</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="2">
<xs:annotation>
<xs:documentation>Retirement</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="3">
<xs:annotation>
<xs:documentation>Death</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="4">
<xs:annotation>
<xs:documentation>Disability</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="5">
<xs:annotation>
<xs:documentation>Long Term Care</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
Это прокси-класс
публичный частичный класс DateTypeDate
{
private int date_typeField;
public DateTypeDate()
{
this.date_typeField = 0;
}
/// <remarks/>
[System.Xml.Serialization.XmlAttributeAttribute()]
[System.ComponentModel.DefaultValueAttribute(0)]
public int date_type
{
get
{
return this.date_typeField;
}
set
{
this.date_typeField = value;
}
}
}
У меня есть требование, где нам нужно отправить значение 0 в date_type.
1 - я попробовал следующее, предполагая, что по умолчанию ему должно быть присвоено значение "0".
StartDate = new DateType();
DateTypeDate date = new DateTypeDate();
2- Затем я явно назначаю значение "date_type" для 0
StartDate = new DateType();
DateTypeDate date = new DateTypeDate();
date.date_type = 0;
StartDate.Date = date;
В обоих случаях узел "date_type" не появляется в фактическом xml-запросе, отправляемом в сервис. Это запрос xml, который генерируется.
<StartDate>
<Date></Date>
</StartDate>
But if i assign a different value than 0 then i can see the date_type node. for example
<StartDate>
<Date date_type="2"></Date>
</StartDate>
Would you able to help what could be the reason that node doesn't appear in request xml id i assign it to "0" also is there any way the node can appear without making chnages in schema. Thanks in advance