首页 新闻 赞助 找找看

这段代码可以精简吗

0
[待解决问题]

OUCollection ous;
                ous = cn.GetRootOUs();
                foreach (OU ou in ous)
                {
                    textBox1.Text += ou.FullName;
                    ous = OU.GetChildren(cn, ou.FullName);
                    foreach (OU ou1 in ous)
                    {
                        textBox1.Text += ou1.FullName;

                        ous = OU.GetChildren(cn, ou1.FullName);
                        foreach (OU ou2 in ous)
                        {
                            textBox1.Text += ou2.FullName;
                        }
                    }
                }

newwind的主页 newwind | 菜鸟二级 | 园豆:202
提问于:2012-05-30 15:20
< >
分享
所有回答(3)
0

可以精简,用递归。

悟行 | 园豆:12559 (专家六级) | 2012-05-30 15:55
0
改为递归可以精简一下
草根程序猿 | 园豆:129 (初学一级) | 2012-05-30 15:55
0

如果只有3层可以用这种方法,若超过3层,可以加一个参数 SetText(OUCollection oc,int count)

public static void SetText(OUCollection oc)
{
    if(oc.Count <= 0) return;

    foreach(var t = oc)
    {
        this.TextBox.Text += t.Name;
    }
    SetText(oc.GetChilds());
}
WilsonPan | 园豆:233 (菜鸟二级) | 2012-06-07 16:06
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册