Tôi là doin trái tham gia trong linq để sql, vì vậy câu hỏi của tôi là trong khi lựa chọn các lĩnh vực bảng bên phải, tôi đang kiểm tra từng lĩnh vực wheather đối tượng tham gia là null hay không, đây có phải là cách chính xác không? hoặc có cách nào khác để làm điều đó không? truy vấn của tôi cũng giống nhưlinq để sql trái tham gia, cần phải kiểm tra null cho bảng bên phải
from u in user
join x in employeee on u.id equals x.userId
into ux from ujoinx in ux.DefaultIfEmpty()
join y in department on x.id equals y.employeeId
into xy from xjoiny in xy.DefaultIfEmpty()
select new {
EmployeeSal = ujoinx!=null?ujoinx.employeeSal:0, // see checkig for null
EmployeeTax = ujoinx!=null?ujoinx.employeeTax:0, // in this 3 lines
UserName = u.username,
DeptName = xjoiny!=null?xjoiny.name:"" //is this a correct way ?
}
Các kết quả truy vấn câu trả lời đúng nhưng nếu tôi không kiểm tra những lĩnh vực ít for null ném nó object reference not set.....error
. Đây là gì DefaultIfEmpty()
doin chính xác?
cảm ơn bạn, thực sự tôi có một số lượng khá lớn các trường, cho mỗi trường phải kiểm tra cảm giác trống rỗng của chương trình dơ bẩn, vì vậy nghĩ có cách nào khác để làm điều đó .. – Meson