繁体   English   中英

C#将列表中的对象转换为另一个对象

[英]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)));

转换列表<string>列出<object>在 C#<div id="text_translate"><p> 我有一个看起来像这样的字符串列表:</p><pre> var rawData = new List<string>(){ "EUR/USD;123", "EUR/GBP;321", "BTC/USD;2321"};</pre><p> 我有以下结构:</p><pre> public class Data { public string instrument { get; set; } public string positions { get; set; } }</pre><p> 我的目标是有一个字符串数据列表,在';'上分开 char 并转换为对象列表。</p><pre> var processedData = new List<Data>(); // processedData[0] ( instrument = EUR/USD, positions = 123 ) // processedData[1] ( instrument = EUR/GBP, positions = 321) // processedData[2] ( instrument = BTC/USD, positions = 2321)</pre><p> 你知道我该怎么做吗?</p></div></object></string>

[英]Convert List<string> to List<object> in C#

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM