본문 바로가기
[개발] 이야기/[DotNet] 이야기

efcore left join 하는 방법 (include 시 nullable)

by 헤이나우
반응형

Entity Framework Core에서 include형식으로 nullable값을 가져오는 방법

 

efcore에는 조인을 직접하지 않고 참조 모델을 불러오는 방법이 있습니다.

모델에 참조하는 포린키가 있는 상태에서 해당 모델을 넣어주고

속성에 foreignkey를 지정해 주면 가능합니다.

 

물론 해당 모델에 포린키에 해당하는 값이 있어야 겠지요?

 

사용하는 방법은 아주 간단합니다.

이런식으로 해당값을 include시키면 자동으로 해당 모델을 채워줍니다.

하지만 include는 값이 없으면 해당 로우를 아예 배제해 버립니다.

이 값이 inner join값이 해당하면 상관없지만 nullable이 가능한 left join 형식의 값이라면 문제가 됩니다.

 

이럴때 DefaultIfEmpty 을 사용하여 nullable값으로 가져 올 수 있습니다.

위에서 보여지는 Payment값은 Nullable이 가능한 left join 형식으로 값을 가져옵니다.

efcore을 많이 쓰진 않았지만 아주 편하고 좋네요 

 

최고입니다.

반응형

댓글