2009-03-04 8 views
4

Lorsque j'utilise Linq2Sql, je peux filtrer une table en utilisant une expression lambda dans la méthode DataLoadOptions.AssociateWith.Entity Framework et AssociateWith

Je l'utilise pour filtrer la langue utilisée - j'ai donc une table de langue avec toutes les langues et une table d'objets contenant des objets.

Comme:

DataLoadOptions opt = ...; 
opt.AssociateWith<DB.Objects>(o => o.Language.Where(p => p.Culture == CurrentUser.Culture)); 

Comment faire avec le cadre de l'entité - où je dois utiliser .include (string) au lieu des dataloadoptions?

Répondre

0

Pouvez-vous nous indiquer la version de EF que vous utilisez? Mais en disant que vous voulez utiliser la méthode "include", cela ressemblerait probablement à ceci.

var result = dbContext.Objects.Include("Language").Where(p=>p.Culture == CurrentUser.Culture); 

Notez que "Langue" doit refléter ce qui est défini dans votre nom de propriété de navigation dans votre modèle. (attention aux pluriels)