Entity Framework - l'écriture de la requête à l'aide d'expressions lambda

J'ai juste commencé à Entity Framework & linq et écrire cette requête

 var query = from rp in db.UM_RolePermission
             where (from ru in db.UM_RoleUser 
             where ru.UM_User.UserID == userId select ru.RoleID).Contains(rp.RoleId)
             select rp;

ci-dessus fonctionne bien et répond à mon besoin, mais je suis en train d'écrire ce même en utilisant la lambda expression à comprendre aussi.

J'ai essayé de lui écrire cela, mais j'ai été incapable de le terminer.

var query1 = db.UM_RolePermission
             .Where(rp => (from ru in db.UM_RoleUser where ru.UM_User.UserID == userId select ru.RoleID).Contains(rp.RoleId));

Quelqu'un peut-il complet?

Relation:

UM_RoleUser and UM_User

Grâce

OriginalL'auteur Muhammad Akhtar | 2010-08-16