Entity Framework RIA Services Как включить сущности во включенную сущность - PullRequest
2 голосов
/ 23 января 2012

У меня есть следующая иерархия:

AccountCatagory

  AccountType

    AccoungGroup

        GeneralLedger   

            SubsidiaryLedger

поэтому у каждого AccountCatagory есть AccountTypes, у каждого AccountType есть AccountGroups ...

Что необходимо загрузить в виде дерева:

Мне нужно загрузить все, когда категория учетной записи загружена, и я написал это так:

   public IQueryable<AccountCatagory> GetAccountCatagories()
    {
    return this.ObjectContext.AccountCatagories.Include("AccountTypes");
    }

, который работает нормально, но загружает только AccountTypes. внутри каждой учетной записи.

Запись Включить для каждой из сущностей GetQuery не работает.

Как я могу указать службам RIA включить объект, если у включенного объекта также есть включение / объект для загрузки?

1 Ответ

2 голосов
/ 23 января 2012

Вот пример того, как я заставил мою работать, предполагая, что все ваши внешние ключи настроены правильно и в файл метаданных вашей доменной службы были внесены соответствующие изменения:

return ObjectContext.Users.Include("AccessRole")
    .Include("AccessRole.AccessRoleReports")

Я никогда не пробовал включать объекты с таким количеством подтипов, но я предполагаю, что это может сработать:

return this.ObjectContext.AccountCatagories.Include("AccountTypes")
    .Include("AccountTypes.AccountGroups")
    .Include("AccountTypes.AccountGroups.GeneralLedger")
    .Include("AccountTypes.AccountGroups.GeneralLedger.SubsidiaryLedger"); 
...