Linq匿名类型
本文关键字:类型 Linq | 更新日期: 2023-09-27 18:13:06
我不经常使用LINQ,问题是它有高效和低效的使用方式。
我有一个项目列表,我只想对每个项目进行计算,并返回计算出的最小十进制数(注意数字,而不是项目)。我有这个LINQ工作,但我想知道这是否是在这种情况下使用LINQ最有效的方式。
var bestPrice = query.Select(x => new
{
Interest = CalcInterest(amount, term, x.ProductRate.Rate)
})
.OrderBy(x => x.Interest)
.FirstOrDefault();
其中"query"是预先选择的LINQ列表,"CalcInterest"是用于计算数字的方法。
这个查询将被大量使用,所以任何小的收获都将是大的胜利。
我认为这里不需要匿名类型。试试这个:
var bestPrice = query.Min(x => CalcInterest(amount, term, x.ProductRate.Rate));
编辑:玩弄它,我意识到这创造了一个不同的结果。您的代码返回一个匿名类型。这只返回兴趣最低的对象。利息数据不保留。无论哪种方法,使用Min
得到最小值