• 博客园logo
  • 会员
  • 周边
  • 众包
  • 新闻
  • 博问
  • 闪存
  • HarmonyOS
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
wysky
博客园    首页    新随笔    联系   管理    订阅  订阅
序列化遇到"不应有的节点"
遇到的问题是类名和XML节点不同.报错:不应有的节点<BaseConfigInfo>云云
===================
反序列化的时候.NET默认是将类的名称对应XML的名称,如:


<Config>
<Name>Tom</Name>
<Age>21</Age>
</Config>

对应的类是:
[Serializable]
public class Config
{
[XmlAttribute(
"Name")]
public string Name;

[XmlAttribute(
"Age")]
public int Age;
}

我们可以通过 XMLRootAttribute 类改变这种默认设置:
[Serializable, XmlRoot(ElementName = "Config")] //即:将XMLConfig 对应 XML配置的Config节点
public class XMLConfig
{
[XmlAttribute(
"Name")]
public string Name;

[XmlAttribute(
"Age")]
public int Age;
}


(来自:http://www.cnblogs.com/dudu/archive/2004/03/24/4064.html)

附一篇常见问题
http://www.cnblogs.com/huqingyu/archive/2005/08/23/221012.html

posted on 2007-12-29 17:03  文's sky  阅读(442)  评论(0)    收藏  举报
刷新页面返回顶部
博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3