遇到的问题是类名和XML节点不同.报错:不应有的节点<BaseConfigInfo>云云
===================
反序列化的时候.NET默认是将类的名称对应XML的名称,如:
<Config>
<Name>Tom</Name>
<Age>21</Age>
</Config>
对应的类是:
[Serializable]
public class Config
{
[XmlAttribute("Name")]
public string Name;
![](/Images/OutliningIndicators/InBlock.gif)
[XmlAttribute("Age")]
public int Age;
}
我们可以通过 XMLRootAttribute 类改变这种默认设置:
[Serializable, XmlRoot(ElementName = "Config")] //即:将XMLConfig 对应 XML配置的Config节点
public class XMLConfig
{
[XmlAttribute("Name")]
public string Name;
![](/Images/OutliningIndicators/InBlock.gif)
[XmlAttribute("Age")]
public int Age;
}
(来自:http://www.cnblogs.com/dudu/archive/2004/03/24/4064.html)
附一篇常见问题
===================
反序列化的时候.NET默认是将类的名称对应XML的名称,如:
![](/Images/OutliningIndicators/None.gif)
![](/Images/OutliningIndicators/None.gif)
![](/Images/OutliningIndicators/None.gif)
![](/Images/OutliningIndicators/None.gif)
![](/Images/OutliningIndicators/None.gif)
对应的类是:
![](/Images/OutliningIndicators/None.gif)
![](/Images/OutliningIndicators/None.gif)
![](/Images/OutliningIndicators/ExpandedBlockStart.gif)
![](/Images/OutliningIndicators/InBlock.gif)
![](/Images/OutliningIndicators/InBlock.gif)
![](/Images/OutliningIndicators/InBlock.gif)
![](/Images/OutliningIndicators/InBlock.gif)
![](/Images/OutliningIndicators/InBlock.gif)
![](/Images/OutliningIndicators/ExpandedBlockEnd.gif)
我们可以通过 XMLRootAttribute 类改变这种默认设置:
![](/Images/OutliningIndicators/None.gif)
![](/Images/OutliningIndicators/None.gif)
![](/Images/OutliningIndicators/ExpandedBlockStart.gif)
![](/Images/OutliningIndicators/InBlock.gif)
![](/Images/OutliningIndicators/InBlock.gif)
![](/Images/OutliningIndicators/InBlock.gif)
![](/Images/OutliningIndicators/InBlock.gif)
![](/Images/OutliningIndicators/InBlock.gif)
![](/Images/OutliningIndicators/ExpandedBlockEnd.gif)
(来自:http://www.cnblogs.com/dudu/archive/2004/03/24/4064.html)
附一篇常见问题