C# 如何进行数据分组。我想显示一个列表,其中单击包含foo的数据,单击它包含boo的数据

C# 如何进行数据分组。我想显示一个列表,其中单击包含foo的数据,单击它包含boo的数据,c#,C#,我有一个这样结构的resobject public class resobject { public IList<foo> Foo{get;set} public string message{get;set;} } public class foo { public IList<boo> Boo{get;set} } public class boo { public string category{get;set;} } 公共类重

我有一个这样结构的resobject

public class resobject
{
    public IList<foo> Foo{get;set}
    public string message{get;set;}
}

public class foo
{
    public IList<boo> Boo{get;set}
}

public class boo
{
    public string category{get;set;}
}
公共类重新对象
{
公共IList Foo{get;set}
公共字符串消息{get;set;}
}
公开课foo
{
公共IList Boo{get;set}
}
公共类boo
{
公共字符串类别{get;set;}
}
目前我有resobject数据。如何访问boo类并访问数据。

公共类程序
public class Program
{

    public class resobject
    {   
        public IList<foo> Foo{get;set;}
        public string message{get;set;}
    }

    public class foo
    {
        public IList<boo> Boo{get;set;}
    }

    public class boo
    {
        public string category{get;set;}
    }



    public static void Main()
    {
        var root = new resobject();

        foreach(var f in root.Foo)
        {
            foreach(var b in f.Boo)
            {
                b.category = "value";
            }
        }
    }
}
{ 公共类重对象 { 公共IList Foo{get;set;} 公共字符串消息{get;set;} } 公开课foo { 公共IList Boo{get;set;} } 公共类boo { 公共字符串类别{get;set;} } 公共静态void Main() { var root=新的resobject(); foreach(root.Foo中的变量f) { foreach(f.Boo中的变量b) { b、 category=“value”; } } } }
Foo(index).Boo…听起来很有趣,Foo-dot boot的属性是Foo。不过,你不能直接得到“Boo”。您需要确保它通过某个阈值,即IList Boo有一个实例并已填充。我建议添加一个“bar”属性来保存这个。此外,您可能希望“category”与公共访问器是私有的-为了一致性,您应该将其称为“hoo”。因此,最终的代码应该类似于if(foo.bar)返回boo.hoo;