Я использую Delphi и использую файл wsdl от другой компании, чтобы настроить мой прокси-класс для использования их данных из их веб-службы.Файл wsdl содержит следующее:
<xsd:simpleType name="departStatus">
<xsd:annotation>
<xsd:documentation>Enumerates allowable departure statuses (DEPARTED, NOT-DEPARTED)</xsd:documentation>
</xsd:annotation>
<xsd:restriction base="xsd:string">
<xsd:enumeration value="DEPARTED"/>
<xsd:enumeration value="NOT-DEPARTED"/>
</xsd:restriction>
</xsd:simpleType>
Когда я генерирую прокси-класс, я получаю следующее:
departStatus = (
DEPARTED,
[System.Xml.Serialization.XmlEnumAttribute('NOT-DEPARTED')]
NOTDEPARTED);
, который не компилируется, если я не удаляю строку, начинающуюся с [System.xml ..., и он не распознает "НЕ ОТПРАВЛЕНО" в качестве допустимого значения для отступления.Если я изменю «NOT-DEPARTED» на «NOT_DEPARTED» в файле wsdl и любой входящий xml-файл будет работать нормально, но компания, которая настроила это, настаивает на том, что «NOT-DEPARTED» действительна и не изменит его.Почему неправильно настраивается перечисление sentStatus?Есть идеи как обойти это?Заранее спасибо за любую помощь.