L2E запрос многие ко многим - PullRequest
0 голосов
/ 15 апреля 2010

У меня есть четыре таблицы:

Users                  PrivilegeGroups        rdPrivileges        LinkPrivilege
-----------            ----------------       ---------------     ---------------
userId(pk)             privilegeGroupId(pk)   privilegeId(pk)     privilegeId(pk, fk)
privilegeGroupId(fk)   name                   code                privilegeGroupId(pk, fk)

L2E не создаст для меня LinkPrivilege сущность. Таким образом, у нас есть только Users, PrivilegeGroups и rdPrivileges сущностей. PrivilegeGroups и rdPrivileges отношения многие ко многим.

Что мне нужно сделать, это получить все code из таблицы rdPrivileges на основе переданного в userId. Как я могу это сделать?

EDIT

кредит к юхарру, рабочий код:

var codes = from u in db.Users
          from pg in db.PrivilegeGroups
          from p in pg.rdPrivileges
          where u.UserId == passedInUserId
             && u.PrivilegeGroups.PrivilegeGroupId == pg.PrivilegeGroupId
          select p.Code;

1 Ответ

3 голосов
/ 15 апреля 2010

Я думаю, что-то вроде этого будет работать.

var codes = from u in Users
            from pg in u.PrivilegeGroups
            from p in pg.rdPrivileges
            where u.userId == "SomeUserID"
            select p.code;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...