[英]C# convert object in a list to another object
是否可以將對象列表分配給另一個將其用作構造函數的對象列表?
例如。
public class PersonORM{
public PersonORM(Person p){ /* convert */ }
public int PersonId { get; set; }
/* Other properties here */
}
public class Person{
public int PersonId { get; set; }
/* Other properties here */
}
當它們在這樣的列表中時, PersonORM
使用構造函數將Person
轉換為PersonORM
:
List<Person> people = getPeople();
List<PersonORM> peopleOrm = new List<Person>(people); // Is something like this possoble?
List<T>
的構造函數不支持它,因此無法使用您所擁有的語法來實現。
如果可以使用linq(取決於您定位的.Net版本),則可以執行以下操作:
List<PersonORM> personOrm = people.Select(p => new PersonORM(p)).ToList();
這將使用Select
運算符從原始列表中的每個項目執行轉換。
可以使用LINQ完成:
List<PersonORM> peopleOrm = new List<Person>(people.Select(p => new PersonORM(p)));
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.