當然,您可以反序列化尚未通過序列化生成的XML,您只需確保使用適合的屬性生成或編寫正確的類結構以匹配XML結構。我不確定IEnumerable
是可能的,但可以使用List<T>
或T[]
。以下是具有List<T>
樣品:
string xml = @"<Person>
<Cop name =""n1"" />
<Cop name =""n2"" />
</Person>";
XmlSerializer ser = new XmlSerializer(typeof(Person));
Person p1 = (Person)ser.Deserialize(new StringReader(xml));
foreach (Cop cop in p1.Cops)
{
Console.WriteLine(cop.Name);
}
}
}
public class Person
{
[XmlElement(ElementName="Cop")]
public List<Cop> Cops { get; set; }
}
public class Cop
{
[XmlAttribute(AttributeName="name")]
public string Name { get; set; }
}
輸出
n1
n2