【发布时间】:2012-03-07 01:20:44
【问题描述】:
当 priceList 较小时,查询执行得很快,但如果 priceList 有五个以上的元素,则查询很慢。
if(!filters.Price.All && !filters.Price.IsEmpty())
{
var priceList = filters.Price.GetRangeList();
foreach (var price in priceList)
{
decimal startPrice = decimal.Parse(price[0]);
decimal endPrice = decimal.Parse(price[1]);
var priceResult = from deal in query
where (deal.DiscountPrice >= startPrice && deal.DiscountPrice <= endPrice)
select deal;
if(priceResult.Count() != 0)
priceResults = (priceResults == null) ? priceResult : priceResult.Union(priceResults);
}
query = query.Intersect(priceResults);
}
【问题讨论】:
-
什么是
query?priceResults是什么?这是 Linq2Sql、Linq2Entities、Linq2Objects 吗?
标签: linq optimization query-optimization