Я пытаюсь десериализовать следующий вывод XML:
<?xml version="1.0" encoding="ISO-8859-1"?>
<Foo>
<Val>Data1</Val>
</Foo>
<Foo>
<Val>Data2</Val>
</Foo>
(Это вывод с аппаратного устройства, и его нельзя изменить)
У меня есть тип XML, определенный как:
[XmlType(AnonymousType=true, Namespace="")]
public class Foo
{
public string Val { get; set; }
}
Я попытался десериализовать этот массив, создав сериализатор вроде:
var s = new XmlSerializer(typeof(Foo[]));
//or
var s = new XmlSerializer(typeof(List<Foo>);
Но каждый вызов s.Deserialize () вызывает исключение InvalidOperaitonException:
System.InvalidOperationException: <Foo xmlns=''> was not expected.
Примечание
var s = new XmlSerializer(typeof(Foo));
// Only deseralizes the first Foo (Data1).
Спасибо за вашу помощь.