Я создал классы C# с помощью xsd.exe из существующего xsd схема. Он сгенерировал следующее свойство:
public class TrackRequestSearchCriteria {
[System.Xml.Serialization.XmlElementAttribute("ConsignmentNumber", typeof(string))]
[System.Xml.Serialization.XmlElementAttribute("PieceReference", typeof(string))]
[System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemsElementName")]
public object[] Items {
get {
return this.itemsField;
}
set {
this.itemsField = value;
}
}
Ожидаемый xml:
<SearchCriteria>
<ConsignmentNumber>#1</ConsignmentNumber>
</SearchCriteria>
Как инициализировать свойство Items
, чтобы оно сериализовалось в <ConsignmentNumber>#1</ConsignmentNumber>
?
new SomeRootElement {
Items = new Object[] {
// how to add ConsignmentNumber here
}
}
@АлександрПетров
TrackRequestSearchCriteria
должно быть свойство с именемItemsElementName
. Не могли бы вы отредактировать свой вопрос, чтобы включить его? Вероятно, связано: Ошибка сериализации XML - недопустимое или отсутствующее значение идентификатора выбора "ItemsElementName" типа'ItemsChoiceType[]'
. И на самом деле, это может быть дубликат. Посмотрите и дайте мне знать. - person dbc   schedule 18.12.2020@AlexanderPetrov
к вашему вопросу отправит ему сообщение, то это не будет. - person dbc   schedule 18.12.2020