преобразовать набор результатов плоской базы данных в коллекцию иерархических объектов на C #

У меня есть запрос к базе данных, который возвращает иерархические данные в плоском формате. например клиенты, заказы и товары заказа (только пример, мои данные другие). как я могу преобразовать его в иерархическую коллекцию объектов, т. е. коллекцию объектов клиента, где каждый объект клиента имеет коллекцию объектов заказа, а каждый объект заказа имеет коллекцию объектов позиции заказа. Это просто случай перебора каждого элемента и создания иерархии объектов вручную ИЛИ есть ли лучший способ добиться этого? Я НЕ использую LINQ. Я получаю данные из хранимой процедуры базы данных SQL-сервера. Это просто случай перебора каждого элемента и создания иерархии объектов вручную ИЛИ есть лучший способ добиться этого? Я НЕ использую LINQ. Я получаю данные из хранимой процедуры базы данных SQL-сервера. Это просто случай перебора каждого элемента и создания иерархии объектов вручную ИЛИ есть лучший способ добиться этого? Я НЕ использую LINQ. Я получаю данные из хранимой процедуры базы данных SQL-сервера. Изменить: я не использую LINQ для извлечения данных из базы данных, но я могу использовать его для управления данными после извлечения, чтобы преобразовать их в требуемый формат, если это решит проблему.
Изменить: образец данных выглядит следующим образом (получен путем объединения таблиц клиентов, заказов и элементов заказа) (извините за плохое форматирование, я не знаю, как отформатировать это в редакторе)

CustId CustName OrderId OrderName OrderItemId OrderItemName
C1 Cust1 O1 Order1 OI1 OrderItem1
C1 Cust1 O1 Order1 OI2 OrderItem2
C1 Cust1 O2 Order2 OI3 OrderItem3
C1 Cust1 O2 Order2 OI4 OrderItem4
C2 Cust2 O3 Order3 OI5 OrderItem5
C2 Cust2 O3 Order3 OI6 OrderItem6
C2 Cust2 O4 Order4 OI7 OrderItem7
C2 Cust2 O4 Order4 OI8 OrderItem8

7
задан RKP 19 May 2011 в 09:56
поделиться