Я сериализую XML-файлы на объекты. Давайте не будем говорить о том, как я сериализую его, поскольку это не проблема. Проблема заключается в том, как создать класс для элементов сложного типа. Для обычных элементов XML, я делаю это следующим образом (с использованием System.Xml.Serialization конечно)Сериализация XML - сложный тип с классом C#
public class Item
{
[XmlElement("thumbnail")]
public string thumbnail { get; set; }
}
Все работает хорошо. Но для сложного типа, я не знаю, как представить его в классе, я пытался представить его в массив как этот
public class Item
{
[XmlArray("thumbnail")]
[XmlArrayItem("url")]
public string url { get; set; }
[XmlArrayItem("width")]
public string width { get; set; }
[XmlArrayItem("height")]
public string height { get; set; }
public string[] thumbnail { get; set; }
}
, но это не сработало.
любые идеи как представлять сложный элемент XML в классе C#?
Можете ли вы показать пример XML-файл? –
Покажите нам схему, и мы можем помочь. Однако .NET framework/VS SDK поставляется с инструментом командной строки 'xsd.exe', который может принимать файл схемы« schema.xsd »и генерировать классы C# (или VB), чтобы вы могли просто использовать этот инструмент для создания своего классов или, по крайней мере, иметь образец для начала: http://msdn.microsoft.com/en-us/library/x6c1kb0s%28v=vs.110%29.aspx –
Спасибо за ваши ответы. Я редактировал сообщение, чтобы включить XML-файл. Я знаю о xsd.exe, и я могу использовать это для этой цели, но поскольку у меня есть проект, работающий в тегах, мне нужно сделать это таким же образом. Благодаря! – RonaDona