将对象数组添加到扩展对象列表的最佳方法

本文关键字:对象 最佳 方法 列表 数组 添加 扩展 | 更新日期: 2023-09-27 18:18:31

我有一个名为'customerArray'的数组Customers[],我有一个名为'extendedCustomerList'的通用列表List<ExtendedCustomers>

ExtendedCustomer类包含一些属性,其中一个是'Customer'(是的,这与数组中的对象相同),像这样:

public class ExtendedCustomer {
     public Customer { get; set; }
     public OtherProperty { get; set; }
     ....
}

什么是最快/最好/最简单/最佳性能/最漂亮的方式来添加与客户的数组与ExtendedCustomers列表?ExtendedCustomer中的其他属性可以保留其默认的NULL值。

我不喜欢循环

将对象数组添加到扩展对象列表的最佳方法

您可以使用AddRange()从客户到扩展客户的投影:

extendedCustomerList.AddRange(customerArray.Select(
    c => new ExtendedCustomer() {
        Customer = c
    }));
Customer[] customers = ...;
List<ExtendedCustomer> extendedCustomers = ...;
extendedCustomers.AddRange(
       customers.Select(c => new ExtendedCustomer{ Customer = c }));

Using LINQ:

extendedCustomerList.AddRange(
    from customer in customerArray
    select new ExtendedCustomer {
        Customer = customer
    }
);