linq 및 linq 엔티티에 새로운 해요 그래서 내 가정에 잘못되었을 수도 있지만 무의식적으로 L2E에서 DefaultIfEmpty 사용하려고했습니다.Defaultifempty 엔티티에 linq에서 작동하는 것 같다
결과 집합을 List로 바꾸면 Invalidlyly Linq 영역으로 건너 뛴다면 Defaultifempty()가 작동하지 않습니다. 아래의 코드가 작동합니다. 아무도 왜 그 이유를 말해 줄 수 있습니까? 그리고 그것이 잘 작동하면 다른 사람들에게 도움이 될 것입니다. 당신이 필터링없이 .ToList()
를 호출하기 때문에
var results = (from u in rv.tbl_user
.Include("tbl_pics")
.Include("tbl_area")
.Include("tbl_province")
.ToList()
where u.tbl_province.idtbl_Province == prov
select new { u.firstName, u.cellNumber,
u.tbl_area.Area, u.ID,u.tbl_province.Province_desc,
pic = (from p3 in u.tbl_pics
where p3.tbl_user.ID == u.ID
select p3.pic_path).DefaultIfEmpty("defaultpic.jpg").First())
}
).ToList();