从该类列表中的项目访问类的成员

时间:2012-12-27 15:30:34

标签: c# list

class Section
{
    public string       Name;
    public List<Option> Options;

    public class Option
    {
        public string Name;
        public string Value;
        public string Path
        {
            get { return "SectionName.OptionName=Value"; }
        }
    }
}

换句话说,我希望能够访问Option中的Section成员,它将始终用作列表。 实现这个的优雅方式是什么?

1 个答案:

答案 0 :(得分:4)

Option需要引用其Section

class Section
{
    public string       Name;
    public List<Option> Options;

    public class Option
    {
        public Section MySection { get; private set; }
        public string Name;
        public string Value;
        public string Path
        {
            get { return string.Format("{0}.{1}={2}", this.MySection.Name, this.Name, this.Value); }
        }

        public Option(Section mySection)
        {
            this.MySection = mySection;
        }
    }
}