NBuilder - 如何创建包含多个派生类的集合

时间:2012-09-20 04:02:11

标签: c# mocking nbuilder

我有实体:

BaseEntity (Base Class & Abstract)
DerivedOne (based on BaseEntity)
DerivedTwo (based on BaseEntity)
...

是否可以构建BaseEntity的列表(集合),但仅包含派生类的实例?

由于

修改

我的意思是可以使用NBuilder Build<BaseEntity>

创建列表

1 个答案:

答案 0 :(得分:0)

是的,这可能是样本

class Program
{
    static void Main(string[] args)
    {
        List<BaseEntity> list = new List<BaseEntity>();
        DerivedOne d1 = new DerivedOne() { bp1 = 1, Name = "DerivedOne" };
        DerivedTwo d2 = new DerivedTwo() { bp1 = 2, Name = "DerivedTwo" }; 

        list.Add(d1);
        list.Add(d2);

    }
}

public class BaseEntity
{
    public int bp1 { get; set; }
}

public class DerivedOne : BaseEntity
{
    public string Name { get; set; }
}

public class DerivedTwo : BaseEntity
{
    public string Name { get; set; }
}