private void SendMailToPeersIfAllHaveProvidedFeedback(ReviewConfiguration review) { //_db.Entry(review).Collection(c => c.Peers).Load(); //_db.Entry(review).Collection(c => c.Feedback).Load(); if (review.Peers.Any(peer => review.GetCurrentFeedback().Select(f => f.Reviewer).All(r => r.Id != peer.Id))) { return; } var smtpClient = new SmtpClient(); foreach (var peer in review.Peers) { var message = new MailMessage(EmailService.DefaultContactEmail, peer.EmailAddress) { Subject = "Review Complete", Body = GetMailBodyForFinishedReview(peer.UserName, review.Id, review.Name) }; smtpClient.Send(message); } }