从派生类c#访问基类(列表)属性

时间:2014-09-10 10:10:56

标签: c# list nunit

我需要访问基类属性,这是来自derieved类的列表。下面是示例。我需要这个用于单元测试。

class child : List<Parent>
 {
    //this class is empty.
  }

 class Parent
 {
      public List<Seller> Seller
   {
       get;
       set;
   }

   public string Id
    {
        get;
        set;
    }

}

无法访问父类的任何属性。请帮忙。

单元测试代码

[Test]
public class test()
{
  child a = new child();
   a. // not showing any properties of parent
 }

2 个答案:

答案 0 :(得分:0)

如果您想获得a.IDa.Seller,您必须声明:

class child :Parent
 {
    //this class is empty.
 }

答案 1 :(得分:0)

如果你派生于List<T>,你将继承自己的能力,而不是来自T的能力。你可以做的是访问列表中的一个T来访问它的属性。

public class Parent
{
    public bool IAmAParent { get; set; }
}

public class Child : List<Parent>
{ }

var c = new Child();
c[0].IAmAParent = true;

从我所看到的情况来看,我感觉你对你需要的继承感到困惑。如果您需要访问Parent中的Child属性,那么它应该从Parent继承,然后放入列表,而不是相反。

public class Parent
{
    public bool IAmAParent { get; set; }
}

public class Child : Parent
{ }

var c = new List<Child>();
c[0].IAmAParent = true;