当前位置 : 主页 > 编程语言 > c语言 >

C#将通用列表复制到具有较少列的对象

来源:互联网 收集:自由互联 发布时间:2021-06-25
public class Person{ public string FirstName {get; set;} public string LastName {get; set;} public string Email {get; set;}}public class PersonTarget{ public string FirstName {get; set;}} 有没有一种简单的方法可以将Person数据复
public class Person
{
  public string FirstName {get; set;}
  public string LastName {get; set;}
  public string Email {get; set;}
}


public class PersonTarget
{
  public string FirstName {get; set;}
}

有没有一种简单的方法可以将Person数据复制到PersonTarget?

我正在使用foreach循环:

List<Person> people = new List<Person>();
        people.Add(new Person() { FirstName = "John", LastName = "Smith", Email = "test@example.com" });

        List<PersonTarget> peopleCopy = new List<PersonTarget>();

        foreach (var person in people)
        {
            peopleCopy.Add(new PersonTarget() { FirstName = person.FirstName });
        }
你可以使用linq:

peopleCopy = people.Select(p => new PersonTarget() {FirstName = p.FirstName}).ToList();
网友评论