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

问题描述 投票:-1回答:1
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 Class对象创建一个新列表,并从列表SE中为其分配值。 (问题是我应该如何在AG类中分配AD值。

// Some thing like this?

var TE = SE.Add(inv)
c# .net list linq
1个回答
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();

这是你的意思吗?

© www.soinside.com 2019 - 2024. All rights reserved.