gpt4 book ai didi

c# - 立即返回 IEnumerable 或转换为 List

转载 作者:行者123 更新时间:2023-11-30 13:39:19 27 4
gpt4 key购买 nike

我正在设计一个类,其中包含多个返回对象列表的函数。我注意到当我的 IEnumerable<T> 时调试变得更容易了。转换为 List<T>因为可以在 Watch 窗口中查看对象。但是,对于 IEnumerable,我不确定这是否是最佳实践.

问:哪个更好?

public IEnumerable<MyData> GetData()
{
return Foo();
}

public IEnumerable<MyData> GetData()
{
return Foo().ToList();
}

最佳答案

良好做法 - 除非有充分的理由/需要,否则不要工作。因此,除非您有特殊原因 - 只需返回 IEnumerable<MyData>无需对其调用 ToList()/ToArray()。

可能的原因:

  • 函数 promise 完成对潜在延迟枚举的评估
  • 您希望结果被多次枚举

关于c# - 立即返回 IEnumerable<T> 或转换为 List<T>?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12508159/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com