C#将一个DTO结果附加到另一个DTO结果

时间:2016-12-09 16:14:26

标签: c# dto

我在C#MVC Web应用程序中有两个DTO类,我需要返回一个类生成的列表,其中包含第一个列表中第二个生成的数据列表。 (想想嵌套数组,例如[0 [a,b],1 [a,b,c],2 [a,b,c,d],3,[a]等......)

这是一个内部应用程序,其中工作人员教育其他人他们的工作角色。

以下是我到目前为止的内容

        //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();
        }

上述方法可以很好地获取活跃的工作人员列表,然后循环完成他们可能已经完成的任何以前的会话。我需要返回人员列表,其中每个成员都有在foreach循环中由第二个DTO选择生成的列表。这是一个foo数据列表,其中包含一个条形数据列表。如果这是有道理的。

1 个答案:

答案 0 :(得分:0)

创建自定义DTO

Public class test
{
// add required properties along with list of ApplicationDTO 
// so it will be something like this (getter setters)

FirstName 

LastName

ResourceID

List<ApplicationDTO>
}

然后您可以创建此测试类的列表并使用它

P.S:这只是一个示例,可以帮助您了解如何实现这一目标