如何使用linq填充嵌套的List类

时间:2016-07-14 18:50:33

标签: c# linq

甚至不确定我知道如何为这个问题提供正确的标题......

我有一个班级:

〜在第一个DLL中

foreach($D->results as $key=>$row)

〜第二个DLL

namespace ServerEnd
{
    class A
    {
         string field1 {get; set;}
         List<B> Nested {get;set;}
    }

    class B
    {
         string field1 { get; set;}
    }
}

现在,如果我想用服务器对象填充客户端对象,我会使用它:

namespace ClientEnd
{
    class A
    {
         string field1 {get; set;}
         List<B> Nested {get;set;}
    }

    class B
    {
         string field1 { get; set;}
    }
}

但是如何将List从服务器填充到客户端?

希望这很清楚?

感谢

2 个答案:

答案 0 :(得分:4)

可以使用linq构建ClientEnd.B对象

   var clientModel = from x in test 
        select new ClientEnd.A
            {
                field1 = x.field1,
                Nested = x.Nested
                          .Select(a=>new ClientEnd.B{ field1=a.field1 }).ToList()                
             };

答案 1 :(得分:1)

我认为你可以像使用属性一样使用它。

Nested = x.Nested;

如果您想创建一个单独的列表,可以使用ToList(),这样就会创建另一个列表:

Nested = x.Nested.ToList();