var bannedUsers = ctx.Users.Where(x => x.IsBanned);
var postsLine = ctx.Posts.Where(x => !x.Blog.Author.IsBanned);
var comments = ctx.Comments.Where(x => x.Post.Id == postId && !x.Author.IsBanned);
public static bool Is(this object obj, Specification spec)
var commentsByPostSpecification = new CommentsByPostSpecification(postId);
var commentsWithoutBannedSpecification = new Specification<Comment>(x => x.Author.Is(new BannedUserSpecification()));
var comments = ctx.Comments.Where(commentsByPostSpecification & commentsWithoutBannedSpecification);