So what do you do when you’re using the nifty new ’entity framework’ and you’re getting data back with LINQ queries and you’ve reached the point where you want to get data back based on criteria in a related table?
Well, if you’re not using a stored proc to do it for you – you’ve got to do a join.
The join syntax in LINQ is similar to SQL syntax, but not quite the same.
Given the following relationships in the database…
… the join would look something like this:
var shoppingLists = from user in Users
join listUsers in ShoppingListUsers
on user.UserId equals listUsers.UserId
join lists in ShoppingLists
on listUsers.ShoppingListId equals lists.ShoppingListId
where user.UserId == userToFind.UserId
select lists;
return shoppingLists;