#sql #linq-to-sql
#sql #linq-to-sql
Вопрос:
Может кто-нибудь, пожалуйста, помочь преобразовать следующее в запрос LINQ To SQL?
select * from projects pr
where pr.Active<>0
AND CapturedDocumentType=2
AND SubmissionReminderTypeID > 0
AND pr.ProjectID In(SELECT Max(wpr.ProjectID) as ProjID
FROM Projects wpr
where wpr.Active<>0
AND wpr.CapturedDocumentType=2
AND wpr.SubmissionReminderTypeID > 0
group by wpr.EmployeeID)
Комментарии:
1. в этом запросе вам не нужны первые 3 условия where. вы уже проверяете это в своем вложенном запросе.
Ответ №1:
попробуйте это
var result = from pr in dc.Projects
where
(from wpr in dc.Projects
where wpr.Active amp;amp;
wpr.CapturedDocumentType == 2 amp;amp;
wpr.SubmissionReminderTyepID > 0
group wpr by wpr.EmployeeID into gpr
select gpr.Max(x => x.ProjectID)).Contains(pr.ProjectID)
select pr;
Комментарии:
1. Я получаю, что ProjectID не существует в контексте в этой части gpr.Max (ProjectID).
2. давайте попробуем
select Max(gpr.ProjectID)
вместо этого. Сегодня я попробую в Visual Studio