У меня есть 3 вида объектов: Агентство, BusinessUnit и Клиент (каждый со своей соответствующей таблицей)
С точки зрения иерархии, агентства имеют собственные BusinessUnits, а BusinessUnits - собственные клиенты.
У меня есть 3 объекта C # POCO для их представления (я обычно выбираю в них новые {}, а не использую сгенерированные LINQ классы):
public class Agency
{
public IEnumerable<BusinessUnit> BusinessUnits { get; set; }
}
public class BusinessUnit
{
public IEnumerable<Client> Clients { get; set; }
}
public class Client
{
public int NumberOfAccounts { get; set; }
public Decimal AmountOfPlacement { get; set; }
public Decimal AvgBalance { get; set; }
public Double NeuPlacementScore { get; set; }
}
Вы можете видеть, что агентства содержат список BusinessUnits, а BusinessUnits - список клиентов.
У меня также есть таблица сопоставления с именем BAC_Map в базе данных, которая говорит, кому принадлежит, и это выглядит примерно так:
![alt text](https://imgur.com/O5IvW.png)
Как я могу построить запрос, чтобы я мог запрашивать и возвращать список агентств? Это означает, что я хочу, чтобы у каждого агентства был установлен список объектов BusinessUnit, и я хочу, чтобы в списке BusinessObjects был установлен список клиентов.
Я могу выполнять базовые запросы LINQ, но это немного над моей головой в отношении таблицы Map и множественного числа? запросы.
Как можно создать метод, такой как GetAllAgencies (), который будет запрашивать не только все агентства, но и заполнять его BusinessUnits, которыми владеет агентство, и клиентами, которыми владеет BusinessUnits?
Редактировать: Любые советы или информация приветствуется. Нужно ли делать объединения? Нужно ли использовать несколько запросов для возврата списка Агентства с заполненными его членами?