如何将一个变量值分配给另一个列表

时间:2018-09-05 20:12:07

标签: c# .net list linq

Class AR
{

public int inv {get;}

public ClassD[] dE {get; set;}

}

Class ClassD : ST

{

 public ClassA AD {get; set;}

 // other variables are also defined

}

Class Ag : CT

{

public int inv {get; set;}

public ClassA AD {get; set;}

 // other variables are also defined

}

以上三个类是预定义的,现在代码需要放在下面:

var SE = Prof(int id); // This will return the AR Class object in a list

现在,我需要为Ag类对象创建一个新列表,并从列表SE中为其分配值。 (问题是我应该如何在AG类中分配AD值。

// Some thing like this?

var TE = SE.Add(inv)

1 个答案:

答案 0 :(得分:0)

据我所知,您需要将List<AR>映射到List<AG>。您可以通过以下方式使用Linq进行操作:

List<AR> SE = Prof(id);
List<AG> TE = SE.Select(s =>
    new AG
    {
        // set inv property
        inv = s.inv,

        // dE is an array of ClassD instances, 
        //so to get some single ClassA instance for setting AD property you can do:
        // AD = s.dE.Single().AD
        //or
        // AD = s.dE.FirstOrDefault()?.AD
    }).ToList();

那是你的意思吗?