это довольно хорошо. но я предпочитаю joins
, потому что они позволяют удалить "совпадающие" выражения из предложения where
, так что там остается только "истинная" фильтрация.
var users = from UserTbl in entity.User
join grpTbl in entity.Group on grpTbl.groupID equals groupId
join role in entity.Role on UserTbl.userID equals role.userID
select new Contract.User()
{
UserId = UserTbl.userID,
UserName = UserTbl.userName,
FirstName = UserTbl.firstName,
LastName = UserTbl.lastName,
GroupId = grpTbl.groupID,
GroupName =grpTbl.groupName,
DesignationID = role.roleID
};