I have this nested for loop which I'd like to elminate by modifying the original query:
foreach (var record in records)
{
foreach (var ap in record.approverList)
{
var approval = (from c in dataContext.approvals
where c.recordId == record.recordId
&& c.personId == ap.personId
orderby c.modified descending
select c).FirstOrDefault();
if (approval != null)
{
ap.vote = approval.vote;
}
}
}
Edit
Ideally, I want to modify the original query for records, which looks something like this:
var records = (
from record in dataContext.Records
where record.statusId == RecordStatus.Submitted
).Include(e => e.approverList.Select(d => d.approver))
.ToList()
personIdshould beap.personId