Модель для десериализации простейшего XML

173
02 ноября 2018, 00:30

Всем привет! Необходимо десериализовать 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);
Answer 1

Вам подойдет такой класс:

[XmlRoot(ElementName = "requestID")]
public class RequestID
{
    [XmlText]
    public string Text { get; set; }
}

Дело в том, что по умолчанию все свойства/поля класса представляются как XmlElement, если вам нужно что-то отличное, то необходимо указать это явно.

READ ALSO
Обновление DataGrid WPF

Обновление DataGrid WPF

Работаю с LINQ TO SQLПри вызове функции DeleteOnSubmit(Data

144
Нажатие на элемент anglesharp

Нажатие на элемент anglesharp

Как нажать на элемент, а потом спарсить после нажатия? Я написал, но у меня почему-то ничего не меняется

222