Всем привет! Необходимо десериализовать xml простейшего вида:
<?xml version="1.0" encoding="UTF-8"?>
<requestID>057f4c78-a022</requestID>
Модель нижеследующего вида возвращает пустой результат:
[Serializable]
[XmlRoot("requestID")]
public class RequestId
{
public string RequestID { get; set; }
RequestId() { }
}
Понимаю, что модель некорректная, но не понимаю как правильно описать содержимое узла requestID.
Десериализую так:
XmlSerializer deserializer = new XmlSerializer(typeof(RequestId));
StringReader xmlString = new StringReader(responseString);
RequestId orderStatus = (RequestId)deserializer.Deserialize(xmlString);
Вам подойдет такой класс:
[XmlRoot(ElementName = "requestID")]
public class RequestID
{
[XmlText]
public string Text { get; set; }
}
Дело в том, что по умолчанию все свойства/поля класса представляются как XmlElement
, если вам нужно что-то отличное, то необходимо указать это явно.
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Как нажать на элемент, а потом спарсить после нажатия? Я написал, но у меня почему-то ничего не меняется