Как я могу загрузить коллекцию с помощью include - PullRequest
2 голосов
/ 21 февраля 2011

Как я могу загрузить коллекцию с помощью include, я пробовал это:

  1. Type.Where(t => t.Entity.Where(e => e.Parent == false).Count() > 0).Include(e => e.Entity)

    Но фильтр здесь не поддерживается (Восстановленные объекты не выполняют условие).

  2. С LinQ To Entities:

    var v = from type in ObjectContext.Type
            from entity in Type.Entities
            where entity.Parent == false
            select type;
    

Но тип не содержит связанных Entities.

Я не могу написать select new Type { type.Code, type.Entities } и не могу использовать анонимный тип, так как он не адаптирован для моего уровня хранилища.

Есть ли у вас какие-либо идеи о том, как получить список Type объектов с его свойством Entities, удовлетворяющим условию?

Обновление

Спасибо за ваш ответ

Я думаю, что не рекомендуется использовать CTP, нет?

Извините, я не объяснил свою объектную модель, у меня есть:

class Type {
  public string Code { get; set; }
  public IList<Entity> Entities { get; set; }
  ...
}

class Entity {
  public string Code { get; set; }
  ...
}

И я хочу использовать ваше второе предложение по фильтрации: отфильтровать оба набора сущностей

Есть ли у вас какие-либо предложения без использования ОСАГО?

Спасибо
Rad

1 Ответ

0 голосов
/ 21 февраля 2011

как вы заявили, что хотите применить фильтры к связанным объектам, лучше всего взглянуть на новый CTP5 EF4 http://blogs.msdn.com/b/adonet/archive/2011/01/31/using-dbcontext-in-ef-feature-ctp5-part-6-loading-related-entities.aspx Смотрите в разделе «Применение фильтров при явной загрузке связанных сущностей»

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