OriginalGriff
Чтобы добавить к тому, что говорит Ричард, 1
и 2
это не имена переменных или свойств, которые не могут начинаться с числового символа.
Таким образом, ваш код C# плох - он не компилируется - и то же самое относится к именам полей XML, которые также должны начинаться с буквы подчеркивания.
Итак, ваш код плох, данные yoru плохи - я не удивлен, что любой код, который вы используете, не будет работать!
Если я исправлю ваш xml-файл:
<?xml version="1.0" encoding="utf-8" ?>
<root>
<main>
<A1>sample</A1>
<A2>sample</A2>
<context>sample</context>
<context>sample</context>
<context>sample</context>
<context>sample</context>
</main>
<main>
<A1>sample</A1>
<A2>sample</A2>
<context>sample</context>
<context>sample</context>
<context>sample</context>
</main>
<main>
<A1>sample</A1>
<A2>sample</A2>
</main>
</root>
И использовать против для создания классов:
/// <remarks/>
[System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true)]
[System.Xml.Serialization.XmlRootAttribute(Namespace = "", IsNullable = false)]
public partial class root
{
private rootMain[] mainField;
/// <remarks/>
[System.Xml.Serialization.XmlElementAttribute("main")]
public rootMain[] main
{
get
{
return this.mainField;
}
set
{
this.mainField = value;
}
}
}
/// <remarks/>
[System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true)]
public partial class rootMain
{
private string a1Field;
private string a2Field;
private string[] contextField;
/// <remarks/>
public string A1
{
get
{
return this.a1Field;
}
set
{
this.a1Field = value;
}
}
/// <remarks/>
public string A2
{
get
{
return this.a2Field;
}
set
{
this.a2Field = value;
}
}
/// <remarks/>
[System.Xml.Serialization.XmlElementAttribute("context")]
public string[] context
{
get
{
return this.contextField;
}
set
{
this.contextField = value;
}
}
}
Тогда класс rootMain выглядит как ваш класс TUs.
(VS может генерировать XML - классы для вас из XML-данных-создайте новый пустой файл класса и выберите в строке меню пункт "Edit...Paste Special...Paste XML as classes", и он будет генерировать классы на основе данных буфера обмена.)
Member 13050667
Извините, пожалуйста, не обращайте внимания на название, я спешил. Это всего лишь короткий простой пример. Конечно, реальный xml имеет правильные имена узлов. Я просто хотел показать образец. Кроме того, NDA не позволяет мне показывать исходный код. Но спасибо вам за помощь! Это дало мне несколько полезных идей!