Я пытаюсь сделать JOIN в Linq, используя лямбда-выражения ... и сталкиваюсь с некоторыми проблемами.
У меня есть две сущности: Comments и CommentSources. CommentSources связаны с комментариями. У меня есть следующий код, который работает:
01 IQueryable<Data.Comment> query = ctx.DataContext.Comments;
02
03
04 if (criteria.IsDeleted == DeletedFilter.Deleted)
05 query = query.Where(row => row.DeletedBy != Guid.Empty);
06 else if (criteria.IsDeleted == DeletedFilter.NotDeleted)
07 query = query.Where(row => row.DeletedBy == Guid.Empty);
08
09 var data = query.Select(row => CommentInfo.FetchCommentInfo(row));
Мне нужно присоединиться к CommentSources для комментариев на поле, и я хотел бы использовать, если возможно, что-то вроде:
01 query = query.Join(join code goes here)
Как я могу сделать это, используя лямбды в дереве выражений?
Еще одна вещь ... как добавить оператор Where в оператор Join?
Вместо того, чтобы задавать другой вопрос ... как бы я сделал предложение Where для этого Join? Например, у меня есть поле SourceId в CommentSource, по которому я хотел бы отфильтровать.