NBuilder заполнить вложенный хэшсет

Я пытаюсь заполнить некоторые тестовые данные NBuilder ( https://github.com/nbuilder/nbuilder).

Вот мой класс:

public class Person
{
    public string Name { get; set; }
    public HashSet<int> AssociatedIds { get; set; }
}

Я хочу создать список людей, у которых есть случайный список целых чисел с диапазоном 1-50. Я не могу понять, как указать, что NBuilder должен заполнять список, и как мне установить ограничение. Код ниже оставляет список пустым.

var people = Builder<Person>.CreateListOfSize(123).Build();

Как я могу заполнить вложенный хэш-сет с правильным диапазоном?

1 ответ

Выяснили способ сделать это:

        var people = Builder<Person>.CreateListOfSize(123)
            .All()
                .With(a => a.AssociatedIds = 
                    Enumerable.Range(0, 50)
                        .Select(x => new Tuple<int,int>(new Random().Next(1,1000), x))
                        .OrderBy(x => x.Item1)
                        .Take(new Random().Next(1,50))
                        .Select(x => x.Item2)
                        .ToHashSet())
            .Build();
Другие вопросы по тегам