【发布时间】:2010-10-28 15:27:33
【问题描述】:
我正在尝试掌握 LINQ。最困扰我的是,即使我对语法理解得更好,我也不想为了表现力而不知不觉地牺牲性能。
对于“有效的 LINQ”,它们是否是任何好的集中信息库或书籍?如果做不到这一点,您个人最喜欢的高性能 LINQ 技术是什么?
我主要关注 LINQ to Objects,但当然也欢迎所有关于 LINQ to SQL 和 LINQ to XML 的建议。谢谢。
【问题讨论】:
-
根据我的个人经验,LINQ 的速度与您自己编写的代码的速度完全相同。在许多情况下,由于延迟评估(以及 .NET 团队已经为您完成的疯狂优化),它甚至更快。
-
我不知道您在什么环境中工作,但我从事对性能至关重要的企业应用程序。每种方法都会定期进行性能审查,并且 LINQ 被严格禁止。使用 LINQ 会受到惩罚,因为必须连续一周每天按需为办公室里的每个人泡茶/咖啡。
-
@steve 我们在任何情况下都不使用 LINQ。老派的“for”和“foreach”循环是常态
-
@Rex M - 这次交流正是我问这个问题的原因。我发现很难找到 LINQ 比手动编码循环有所改进的案例,但是当 LINQ 彻底失败时,有很多反例。如果我们无知,请教育我们。
-
@Rex M - 也许是这样。我只是想知道我在这里看到的性感 LINQ 答案中有多少是最佳的。表现力很诱人。感谢您的想法。
标签: c# .net linq performance