/**////遍历森林查找一个节点public static Region GetRegion(Region[] regions, string regionCode)...{ if (regions != null && regions.Length>0) //深度不为0 ...{ foreach (Region region in regions) //遍历森林的根节点 ...{ if (region.Code == regionCode) //当前节点相等 ...{ return region; //返回当前节点 } else ...{ if (region.SubRegion != null && region.SubRegion.Length > 0) //包含子节点 ...{ Region r= GetRegion(region.SubRegion, regionCode); //遍历当前节点的子节点 if (r != null) //如果从子节点找到 ...{ return r; //返回节点 } } } } //遍历结束没找到,则返回空。 return null; } else ...{ //深度为0,返回空 return null; }}//Region 类型。public class Region ...{ private string nameField; private string codeField; private Region[] subRegionField; /**//// <remarks/> public string Name ...{ get ...{ return this.nameField; } set ...{ this.nameField = value; } } /**//// <remarks/> public string Code ...{ get ...{ return this.codeField; } set ...{ this.codeField = value; } } public Region[] SubRegion ...{ get ...{ return this.subRegionField; } set ...{ this.subRegionField = value; } }}