我有一个xml file.i需要序列化为c#class。
<Configs>
<Services>
<Path>
<Url>test</Url>
<ID>1234</ID>
</Path>
<Path>
<Url>java</Url>
<ID>1234</ID>
</Path>
</Services>
<Certification>
<name>Mark</name>
<name>Peter</name>
</Certification>
</Configs>
</Configuration>
我需要将其序列化为一个类
我写过以下课程。
public class Configuration
{
public Certification Configs { get; set; }
public Path[] Services { get; set; }
}
public class Certification
{
[XmlArray("Certification")]
[XmlArrayItem("name")]
public string[] name { get; set; }
}
public class Path
{
public string Url { get; set; }
public string ID { get; set; }
}
我获得了Certification类及其值的价值。 我为Configuration创建了一个对象并循环
foreach (string Name in obj.Configs.name)
{
}
这是有效的。
但我没有获得服务的价值。 这在obj.services上无效
Foreach (Path serviceUrl in obj.Services)
{
}
obj.Services为空
如何在路径中获取url和ID节点的值?
由于
答案 0 :(得分:2)
您的Services
数组位于错误的类中。它应该在根类的Configs
属性中:
public class Configuration
{
public Certification Configs { get; set; }
}
public class Certification
{
[XmlArray("Certification")]
[XmlArrayItem("name")]
public string[] name { get; set; }
public Path[] Services { get; set; }
}