我有2个表寻找非好友用户LINQ
用户
用户ID
用户名
名字
姓氏
友谊
RelationId
用户ID
FriendId
我需要返回记录不存在于友谊表中的所有用户。当用户的UserId位于Friendship表的UserId或FriendId列时,用户可以成为用户的好友。
我有2个表寻找非好友用户LINQ
用户
用户ID
用户名
名字
姓氏
友谊
RelationId
用户ID
FriendId
我需要返回记录不存在于友谊表中的所有用户。当用户的UserId位于Friendship表的UserId或FriendId列时,用户可以成为用户的好友。
我想你想是这样的:
(注:这是免费的手)
int userId = 1;
var userFriends = context.Users
.Where(u => u.ID = userId)
.SelectMany(u => u.FriendShips)
.Select(fs => fs.Friend);
var nonFriends = context.Users
.Where(u => u.ID != userId)
.Except(userFriends);
注意nonFriends
是查询。请致电.ToList()
至评估查询并返回实际数据。
对不起,如果我不清楚,但我需要得到特定用户的非朋友。在上面的查询中没有这样的条件。 –
对不起,但没有奏效。它向用户显示用户ID 1. –
@PitDigger请参阅编辑。 –
我宁愿认为
var users = context.Users.Where(u => !u.Friendships.Any() && !u.Friendships1.Any());
据我了解,用户可以在任何一侧,UserId
以及FriendId
到目前为止,你已经上市的要求。问题是什么?你卡在哪里?作为初学者,你有没有探索Linq中的左连接? –
你不显示努力。这是获得降低成本的原因。你似乎不是在stackoverflow中的新手。这是怎么发生的? – Oybek