Code Bye

存储相似下图层次机构的类怎么构建

<?xml version=”1.0″ encoding=”utf-8″?>
<ProjectNode>
<PrimaryNode Index=”1″ Code=”150000″ Name=”xxx省”>
<SecondNode Index=”2″ Code=”150100″ Name=”xxx市”>
<ThirdlyNode Index=”3″ Code=”150101″ Name=”xxx区”>
</ThirdlyNode>
</SecondNode>
</PrimaryNode>
</ProjectNode>
本人是这样写:
public class TreeConfigClass : ConfigInterface
{
public TreeConfigClass()
{

}
private List<ConfigInterface> _Node = new List<ConfigInterface>();
public int Count
{
get
{
if (_Node == null)
return 0;
return _Node.Count;
}
}
/// <summary>
/// 索引器
/// </summary>
/// <param name=”index”>数组索引</param>
/// <returns></returns>
public ConfigInterface this[int index]
{
get
{
if (_Node == null)
return null;
if (_Node.Count < 0)
return null;
return _Node[index];
}
set
{
if (_Node == null)
return;
_Node.Add(value);
}
}
public void Add(ConfigInterface ExTreeConfigClass)
{
_Node.Add(ExTreeConfigClass);
}
/// <summary>
/// 节点名称
/// </summary>
private string _Name;
public string Name
{
get { return _Name; }
set { _Name = value; }
}
/// <summary>
/// 节点代码
/// </summary>
private string _Code;
public string Code
{
get { return _Code; }
set { _Code = value; }
}
/// <summary>
/// 序号
/// </summary>
private string _Index;
public string Index
{
get { return _Index; }
set { _Index = value; }
}
}
但是读取的时候

解决方案

10

简单生成实体类方法:将Xml复制到粘贴板,在项目里新建一个空cs文件,或打开已有的cs,依次选择菜单:编辑-》选择性粘贴-》将Xml粘贴为类,将会生成Xml对应的实体类

30

存储的内容都会变成最后一项的内容 ?
那是你没有实例化每一个节点,而是用一个节点对象加载每一个节点造成的

CodeBye 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权 , 转载请注明存储相似下图层次机构的类怎么构建