【发布时间】:2010-08-24 10:53:31
【问题描述】:
我有一个对象,具有 ID 和 Name 属性。
我有一个对象列表,但我想将其转换为包含对象名称的字符串列表。 我猜有一些奇特的 Linq 方法可以将对象的名称放入列表中。
List<string> myObjectNames = myObjectList.?
【问题讨论】:
标签: c# linq generic-list
我有一个对象,具有 ID 和 Name 属性。
我有一个对象列表,但我想将其转换为包含对象名称的字符串列表。 我猜有一些奇特的 Linq 方法可以将对象的名称放入列表中。
List<string> myObjectNames = myObjectList.?
【问题讨论】:
标签: c# linq generic-list
如果您知道它专门是 List<T> 而不是其他集合类型,那么您可以使用 List<T>.ConvertAll:
将当前
List<T>中的元素转换为另一种类型,并返回一个包含转换后元素的列表。
例子:
List<string> myObjectNames = myObjectList.ConvertAll(x => x.Name);
如果您只知道它是可枚举类型但不一定是列表,那么您可以使用 LINQ 扩展方法 Enumerable<T>.Select 和 Enumerable<T>.ToList:
List<string> myObjectNames = myObjects.Select(x => x.Name).ToList();
【讨论】: