我想比较两个基于联合和交集的实体框架 pocos 集合。我试图找出开箱即用是否使用 f# 而不是 linq 处理这些集合会更好?
问问题
624 次
1 回答
1
您不需要运行分析器——F# 3.0 支持 LINQ,因此您应该能够组合一个小型基准测试项目,该项目同时使用 LINQ 和标准 F# Set<'T>
,并测量完成您需要的任何操作的时间(System.Diagnostics.Stopwatch
用于此)。
事情就是这样——这个问题的答案在很大程度上取决于你的确切需求,所以你需要做一些测试来看看哪个对你的用例来说更快。例如,如果您创建一个小型基准测试应用程序并发现 LINQ(在 C# 或 F# 3.0 中)快了 10 毫秒,您是否只使用 LINQ,因为它更快?也许,也许不是——这取决于 10 毫秒的节省对您的应用程序是否重要;在大多数情况下,它可能不是,因此您应该使用最容易与其余代码集成的任何解决方案。
就个人而言,我会在这里使用 F# 3.0 和 LINQ,因为它允许非常简洁的定义,并且如果 EF 可以将部分或全部计算卸载到数据库服务器,它也可能会更快。
于 2013-01-27T14:52:36.470 回答