【问题标题】:Retrieve List<Object> to List<String> [closed]检索 List<Object> 到 List<String> [关闭]
【发布时间】:2013-12-11 08:18:24
【问题描述】:

目前,我有一个像这样的List&lt;object&gt;List&lt;USER&gt;

User 类中,我有一个名为UserName 的列。

我想将此列检索到List&lt;string&gt;

如果不使用foreach 代替List&lt;USER&gt;,它如何工作?

谢谢。

【问题讨论】:

标签: c# list


【解决方案1】:

您可以使用 LINQ:

List<string> userNames = users.Select(u => u.UserName).ToList();

【讨论】:

  • 需要注意的重要一点是,在内部,这仍然可以通过 foreach 循环解决......但话又说回来,没有办法解决这个问题。
  • @Tobberoth:是的,当然 LINQ 不能执行魔法;)但它可以增加可读性,这比几毫秒更重要。
  • 哇,非常感谢蒂姆。它节省了我很多时间。
  • @user3011414:那么你可能想接受一个答案。
【解决方案2】:

除了 Tim Schmelter 的帖子:

要将IEnumerable&lt;object&gt; 转换为IEnumerable&lt;USER&gt;,您可以使用Cast&lt;T&gt;OfType&lt;T&gt; 方法。

可以这样写:

var userNames = users.Cast<USER>.Select(u => u.UserName).ToList();

【讨论】:

    猜你喜欢
    • 2018-09-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-05-15
    • 1970-01-01
    • 1970-01-01
    • 2021-04-29
    • 1970-01-01
    相关资源
    最近更新 更多