Я пытаюсь сгруппировать список элементов, используя LINQ для отображения в ретрансляторе. У меня есть запрос, который почти делает то, что мне нужно, но не совсем.Вложенная группа с LINQ
Мои данные выглядит
Cart object
{ID: 10, isInventory: True, Pricing: 4},
{ID: 10, isInventory: True, Pricing: 20},
{ID: 10, isInventory: False, Pricing: 5},
{ID: 10, isInventory: False, Pricing: 23},
{ID: 74, isInventory: False, Pricing: 7}
И я хочу группе isInventory, то группе каждый из них по идентификатору. В настоящее время у меня есть запрос, который близок, но все еще не так.
var grouped = from cart in shoppingCart.Cart
group cart by cart.IsInventoryStorage into Cart1
from CartGroup in
(from cart in Cart1
group cart by cart.BranchID)
group CartGroup by CartGroup.Key;
Похоже, сгруппированных правильно, но Keys
на isInventory, и я бы в идеале хочу быть key.isInventory
то каждая из этих групп будут отсортированы по key.ID
.
Благодаря
Если я вас правильно понял, вы не означают группу, путем Сортировать по. Затем последующий заказ должен использовать ThenBy, иначе он уничтожит первый заказ. – eftpotrm
Если вы следуете инструкциям [Как создать вложенную группу (Руководство по программированию на C#)] (https://msdn.microsoft.com/en-us/library/bb545974.aspx), вы заметите, что синтаксис немного но в любом случае, в вашем случае «group CartGroup by CartGroup.Key' должна быть« group CartGroup by Cart1.Key' –
Иван, вы поймали мою ошибку, это именно то, что проблема. Благодарю. – sully77