I have a stored proc returning a datatable using a stored procedure. I am able to convert the it to an object using the following code
`outgoingPaymentData.AsEnumerable().Select(x => new OutgoingPaymentApprovalDetails() { });`

Here is my `OutgoingPaymentApprovalDetails` class

```
 public class OutgoingPaymentApprovalDetails
 {
    public int OriginatorId { get; set; }

    public string Name { get; set; }

    public string DocumentId { get; set; }

    public string DebtorName { get; set; }

    public string Currency { get; set; }

    public double Amount { get; set; }

    public string Description { get; set; }

    public string DebitAccountNo { get; set; }

    public string CreditAccountNo { get; set; }
}

```

Now, instead of a flat list, I need to add heirarchy, to select this one object to 3 objects.

Classes as under:

```
public class OriginatorDetails
{
     public int OriginatorId { get; set; }
     public string Name { get; set; }
     public List<DocumentDetails> DocumentDetails { get; set; }

}

public class DocumentDetails
{
   public string DocumentId { get; set; }
   public List<TransactionDetails> TransactionDetails { get; set; }
}
public class TransactionDetails
{
   public string Amount { get; set; }
   public string DebitAccountNo { get; set; }
   public string CreditAccountNo { get; set; }
}

```

Basically, All Documents of a particular `Originator` have to be in the list of `DocumentDetails` and all `TransactionDetails` of a particular document have to be in that list.

One way is to create a dictionary and add stuff in it and finally create an object. I was wondering if there was a more abbreviated and efficient way to do something like this.
TIA