日期:2014-05-20  浏览次数:20791 次

请教Linq复合条件查询的问题
原句:var q = from p in product select p

现在的条件是:(price>=100 && price<1000) || (price>=2000 && price<3000)

请问,这种情况该如何写语句呢?谢谢大家!

------解决方案--------------------
var q = from p in product where (p.price>=100 && p.price<1000) || (p.price>=2000 && p.price<3000) select p
 

------解决方案--------------------
C# code

List<product> products = new List<product>();
var q = from p in product select p
foreach(var pc in PriceConditions)
{
    products.Add(q.where(p=>p.price>=pc.MinPrice&&p.price<pc.MaxPrice)).Select(x=>new product{x.price,.....}));//其他字段自己补齐
}