Pur*_*ome 10 .net string random nbuilder
非常简单的问题:我可以使用NBuilder创建x个随机字符串的集合吗?
我在努力......
// NOTE: Tags need to be lowercase.
return Builder<string>
.CreateListOfSize(10)
.WhereAll()
.Has(x => x = randomGenerator.Phrase(15))
.WhereTheFirst(1)
.Has(x => x = "time")
.AndTheNext(1)
.Has(x => x = "place")
.AndTheNext(1)
.Has(x => x = "colour")
.Build();
Run Code Online (Sandbox Code Playgroud)
但它是运行时错误,我需要调用一些特定的构造函数或其他东西.
有人有主意吗?
And*_*lla 12
抱歉让旧线程恢复生机,但我只是想分享这个解决方案/ hack:
var myList = Enumerable.Range(0, 10).Select(el => generator.Phrase(10));
Run Code Online (Sandbox Code Playgroud)
感谢您的反馈意见:)
NBuilder使用默认(无参数)构造函数创建对象.您收到的异常是因为String类没有默认构造函数.
要创建随机字符串列表,可以在循环内使用Phrase方法.也许不像单个NBuilder链一样干净,但它完成了工作:
List<string> stringsList = new List<string>();
var generator = new RandomGenerator();
for (int i = 0; i < 10; i++)
{
stringsList.Add(generator.Phrase(15));
}
return stringsList;
Run Code Online (Sandbox Code Playgroud)