用虚拟数据填充POCO的最佳方法是什么?

Dan*_* T. 2 asp.net-mvc mocking stub poco

我有一堆POCO,它们都在一棵大树上相互关联.例如,这是顶级元素:

public class Incident : Entity<Incident>
{
    public virtual string Name { get; set; }
    public virtual DateTime Date { get; set; }
    public virtual IEnumerable<Site> Sites { get; set; }

    public Incident()
    {
        Sites = new HashSet<Site>();
    }
}
Run Code Online (Sandbox Code Playgroud)

树就像这样Incident -> Sites -> Assessments -> Subsites -> Images.POCO没有任何逻辑,只是一堆属性.我想要做的就是用随机虚拟数据填充每个属性,这样我就可以编写一些搜索代码.如果我想创建大量的虚拟数据,最好的方法是什么?

wom*_*omp 7

我会考虑使用NBuilder.它允许您这样做 - 使用非常简单的语法为对象创建随机数据.例如:

var products = Builder<Product>.CreateListOfSize(100)
                    .WhereTheFirst(5)
                         .Have(x=>x.Title = "something")
                    .AndTheNext(95)
                         .Have(x => x.Price = generator.Next(0, 10));
Run Code Online (Sandbox Code Playgroud)