C#列表对多个属性进行分组

mHe*_*pMe 0 c# linq

我有一个OrderBlock对象,其中包含Orders列表.此列表绑定到我的datagrid.

微软表示,该清单通常包含同一股票的多个订单.一些订单可能是买其他可能是卖单.

我想基于Order.Id和Order.Side对列表进行分组,但我不确定如何做到这一点?

Fed*_*gui 6

var grouped = list.GroupBy(x => new {x.Id, x.Side});
Run Code Online (Sandbox Code Playgroud)


p.s*_*w.g 6

你可以使用这样的东西:

var results = 
    from o in OrderBlock
    group o by new { o.Id, o.Side };
Run Code Online (Sandbox Code Playgroud)

或者用流利的语法:

var results = OrderBlock.GroupBy(o => new { o.Id, o.Side });
Run Code Online (Sandbox Code Playgroud)