[英]Convert linq query into lambda query with joins
我是lambda的新手。 我如何使用lambda編寫以下代碼。 謝謝
User user1 = (from u in db.Users
join h in db.HCM_SMS_ROLE_MAPPINGs
on u.roleID equals h.SMS_Role_ID
where (u.Employee_Code == employeeCode && u.isDeleted == false && h.Is_Active_App == true)
select u).Distinct().FirstOrDefault();
這應該為您工作:
db.Users.Join(db.HCM_SMS_ROLE_MAPPINGs, u => u.roleID, h => h.SMS_Role_ID, (u, h) => new
{
u, h
}
).Where(x=> x.u.Employee_Code == employeeCode && x.u.isDeleted == false && x.h.Is_Active_App == true).Select(x=> x.u).Distinct().FirstOrDefault()
干凈簡單! 希望能幫助到你
我的方法是右鍵單擊左側欄中的燈泡,然后選擇“將LINQ轉換為方法鏈”,從而得到以下結果:
User user1 = (db.Users
.Join(db.HCM_SMS_ROLE_MAPPINGs,
u => u.roleID,
h => h.SMS_Role_ID,
(u, h) => new { u, h })
.Where(@t => (u.Employee_Code == employeeCode && u.isDeleted == false && h.Is_Active_App == true))
.Select(@t => u))
.Distinct()
.FirstOrDefault();
我認為這是Resharper功能。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.