왼쪽 된 조인에서 때때로 context에 대한 null 값을 반환하기 때문에 비 정적 메서드 예외를 반환하는 LINQ 쿼리가 있습니다. .Linq : non-static-methods-a-target select new {model}
return (from t in context.Alphas
join b in context.Betas on new { Id = t.Id } equals new { Id = b.AlphaId } into b_leftjoin
from b in b_leftjoin.DefaultIfEmpty()
where
t.UserProfileId == userProfileId
&& t.IsClosed == false
&& t.IsCancel == false
&& t.EndDate <= DateTime.Now
orderby
t.Title
select new AlphaSelection()
{
Title = t.Title,
CurrentUser = b.UserProfile == null ? null : b.UserProfile,
BetaId = b.Id == null ? 0 : b.Id,
ProjectNumber = t.ProjectNumber,
AlphaId = t.Id
}).ToList();
CurrentUser 및 BetaId를 제거하면 쿼리가 작동하지만 모든 정보를 함께 유지해야합니다. 그 문제를 해결해 주시겠습니까?
감사합니다. (코멘트에 응답)
편집 :
실제 예외가 이것이다
비 정적 방법은 타겟을 필요로한다. 설명 : 현재 웹 요청을 실행하는 동안 처리되지 않은 예외가 발생했습니다. 오류 및 코드에서 시작된 위치에 대한 자세한 정보는 스택 추적을 검토하십시오.
Exception Details: System.Reflection.TargetException: Non-static method requires a target.
Source Error:
Line 39: else
Line 40: {
Line 41: return query.ToList();
Line 42: }
Line 43: }
** 실제 ** 예외 란 무엇입니까? –
예외에 대한 정확한 세부 정보를 제공 할 수 있습니까? 지금은 불분명하다. –
'Id '의 종류는 무엇입니까? 그리고 왜 당신은'new {}'를 사용하여 당신의 참여를하고 있습니까? – Guvante