Мне нужна помощь с этим запросом linq. Это должно быть довольно просто, но это пинает мою задницу.
Мне нужно использовать подзапрос для фильтрации данных из основного запроса, но каждый путь, который я пытался использовать, приводит к сбою.
Подзапрос сам по себе выглядит следующим образом.
int pk = (from c in context.PtApprovedCertifications
where c.FkosParticipant == 112118 &&
(!excludedActionTypes.Contains(c.FkMLSosCodeActionType)) &&
c.EffectiveDate <= DateTime.Now &&
c.FkptApprovedCertificationVoidedBy == null
orderby c.EffectiveDate descending,c.PK descending
select c.PK).FirstOrDefault();
Это работает как положено, но, как вы видите, я подключил номер 112118. Это должен быть первичный ключ из основного запроса.
Комбинированный запрос, над которым я работал, выглядит следующим образом.
IQueryable<PtAMember> result = (from p in context.PtAMembers
where (p.FkptACertification == (from c in context.PtApprovedCertifications
where c.FkosParticipant == p.PtApprovedCertification.OsParticipant.PK &&
(!excludedActionTypes.Contains(c.FkMLSosCodeActionType)) &&
c.EffectiveDate <= DateTime.Now &&
c.FkptApprovedCertificationVoidedBy == null
orderby c.EffectiveDate descending, c.PK descending
select c.PK).FirstOrDefault()) &&
(p.LastName.ToLower().Contains(param.ToLower()) ||
p.FirstName.ToLower().Contains(param.ToLower()) ||
p.SocialSecurityNumber.Contains(param))
select p).Distinct().OrderBy(PtAMembers => PtAMembers.LastName).ThenBy(PtAMember => PtAMember.FirstName);
Это приводит к ошибке. Любая помощь в решении этой головоломки будет принята с благодарностью.
Спасибо!