我有一个这样的课程:
class Order
{
public int Shares { get; set; }
public int Price { get; set; }
}
和两个清单:
List<Order> _buyOrder = new List<Order>();
List<Order> _sellOrder = new List<Order>();
现在我需要使用LINQ创建一个新列表,其中_buyOrder.price的所有值都高于_sellOrder.price。没有LINQ,我做了两个for循环,这很丑陋而烦人。有人能指出我正确的方向吗?
我尝试过没有成功:
var t = _buyOrder
.Select(x => x)
.Where(x => x.Price > _sellOrder.Select(y=>y)
.Where(y=>y.Price));
答案 0 :(得分:3)
这是你想要的吗?
var sellMax = _sellOrder.Max(y => y.Price);
var t = _buyOrder.Where(x => x.Price > sellMax);
答案 1 :(得分:1)
var max = _sellOrder.Max(x => x.Price);
var result = from b in _buyOrder
where b.Price > max
select b;