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


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)

据我了解您的问题,您需要将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();

这是你的意思吗?

最新更新