如何在实体框架中为以下方案编写查询
本文关键字:方案 查询 实体 框架 | 更新日期: 2023-09-27 18:34:30
>Tables:
用户
userid username imageurl
1 venkat http://test.jpg
2 raghu http://test1.jpg
3 ravi http://test2.jpg
朋友
id userid frienduserid status
1 1 2 true
2 2 1 false
日志状态
id userid sessionid
1 1 7482748
2 1 8274282
3 2 3123123
如果我通过userid=1
那么需要把他的朋友拉username,imageurl,status
,他的任何朋友至少有一只sessionid
然后给出"真实"的状态。
截至我能够加入用户,朋友表给他的朋友username,imageurl
和status
。但是如何检查他中的任何一个至少有一只sessionid
?
我的查询:
var result = from pa in cxt.Users
join us in cxt.Friends on pa.User_Id equals us.Friend_UserId
where us.User_Id == incID
select new
{
us.frienduserid,
pa.User_Name,
pa.ImageURL,
us.status
};
var result =
from user in cxt.Users
join friend in cxt.Friends on user.UserId equals friend.FriendUserId
where user.UserId == incId
select new
{
FriendUserId = friend.FriendUserId,
UserName = user.UserName,
ImageUrl = user.ImageUrl,
Status = cxt.LogStatus.Any(s=>s.UserId == user.UserId)
};