【问题标题】:Enumerable.Concat not working on empty list [duplicate]Enumerable.Concat 不适用于空列表[重复]
【发布时间】:2017-05-25 09:43:53
【问题描述】:

我有以下代码,它从子函数中检索列表并将其返回给主函数。我的问题是我无法将 subfunc 的结果连接到 mainfunc 中声明的枚举。有什么我遗漏的吗?

private void MainFunc()
{
    IEnumerable<CustomClass> keys = Enumerable.Empty<CustomClass>();
    foreach (var item in items)
    {
        keys.Concat(SubFunc(item));
    }
}
private IEnumerable<CustomClass> SubFunc (string y)
{
    IEnumerable<CustomClass> list = GetList(y).ToList();
    return list;
}

【问题讨论】:

  • 您可以使用 Add 或 AddRange 方法,而不是使用那些纯方法 (CONCAT)。

标签: c# ienumerable


【解决方案1】:

.Concat() 不会改变主题,而是返回一个 IEnumerable&lt;T&gt;

你只是把它扔掉了。

修复你的代码:

keys = keys.Concat(SubFunc(item))

【讨论】:

    猜你喜欢
    • 2015-11-08
    • 2022-12-04
    • 1970-01-01
    • 2017-12-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-09-25
    相关资源
    最近更新 更多