У меня есть два класса DTO в веб-приложении C# MVC, и мне нужно вернуть список, сгенерированный из одного класса, со списком данных, сгенерированным вторым в первом списке. (Подумайте, вложенный массив, например [0 [a, b], 1 [a, b, c], 2 [a, b, c, d], 3, [a] и т. Д.])C# Добавить один результат DTO в другой результат DTO
Это для внутреннего применения, когда сотрудники обучают других своим должностям.
Ниже то, что я до сих пор
//Abstract code representative of end goal
var foo = from x in _fooCtx.Foo
where (x.Condition1 && x.Condition2 && x.Condition3 && x.Condition4 > 0)
select new Models.ResourceDTO()
{
FirstName = x.FirstName,
LastName = x.LastName,
ResourceID = x.ResourceID,
};
//currently loops through each memeber of staff in list above and grabs their wamits history.
foreach (var foobar in foo)
{
int foobarID = foo.ResourceID;
var bar = from u in _barCtx.BarViews
where (u.PupilID == foobarID || u.TeacherID == foobarID)
select new Models.ApplicationDTO()
{
pupilName = u.Pupil,
teacherName = u.Teacher,
appDate = u.appDate.ToString(),
appID = u.ID,
};
var leaderList = bar.ToList();
}
выше работает отлично в получении списка активных сотрудников, а затем пробегает по любым из предыдущих сессий, они, возможно, сделали. Мне нужно вернуть список сотрудников, где каждый член имеет список, сгенерированный вторым выбором DTO в цикле foreach. Таким образом, список данных foo и внутри этого списка данных бара. Если это имеет смысл.
Спасибо за ваше предложение, однако я не думаю, что это то, что я ищу. У меня уже есть два отдельных класса DTO для ресурса и приложения. Мне нужно добавить результаты, полученные в инструкции foreach, до конца результатов в выборе ResourceDTO. Поэтому возврат foo.ToList() также будет содержать данные приложения, которые мне нужны, против каждого пользователя. –