Edité le dernier numéro/préoccupationaux entités et LINQ plusieurs à plusieurs
J'utilise EF1 et essayer de faire ce qui suit, mais ayant des problèmes avec mes nombreux à plusieurs. J'ai la méthode d'extension BuildExpression qui fonctionne pour contourner .Contains() n'étant pas disponible dans EF1.
PagingUsers & Les groupes ont une relation plusieurs-à-plusieurs.
Voici ce que j'ai jusqu'à présent qui fonctionne.
// Find many groups
public IQueryable<Group> FindGroupsByGroupIDs(List<int> group_ids)
{
return db.Groups.Where(LINQHelpers.BuildContainsExpression<Group, int>(g => g.Group_ID, group_ids));
}
// Find users in a group
public IQueryable<PagingUser> FindPagingUsersByGroupID(int group_id)
{
return db.PagingUsers.Include("Groups").Where(u => u.Groups.Any(g => g.Group_ID == group_id));
}
Maintenant, je voudrais combiner ces derniers et trouver les utilisateurs qui se trouvent dans une liste de groupes.
public IQueryable<PagingUser> FindPagingUsersByGroupIDs(List<int> group_ids)
{
return from g in db.Groups.Where(LINQHelpers.BuildContainsExpression<Group,int>(g => g.Group_ID, group_ids))
join p in db.PagingUsers on ???
select p;
}
Résolu mes types ne peut pas être déduit problème, mais ma relation plusieurs à plusieurs complique l'expression – ryan