C# 实体框架中的条件
我正在从事实体框架项目,我必须在dbContext中应用或设置条件 我尝试过这个方法,但它给我的错误是“运算符| |不能应用于lambda表达式类型的操作数” 我也试着用&&而不是| |,但它给了我同样的错误&,我怎么能为这个senario应用或条件呢?C# 实体框架中的条件,c#,entity-framework,C#,Entity Framework,我正在从事实体框架项目,我必须在dbContext中应用或设置条件 我尝试过这个方法,但它给我的错误是“运算符| |不能应用于lambda表达式类型的操作数” 我也试着用&&而不是| |,但它给了我同样的错误&,我怎么能为这个senario应用或条件呢? 我也尝试过不使用括号您需要这样做: return dataContext.Friends.Where(r => (r.ToUserId == touserid && r.FromUserId == fromuserid)
我也尝试过不使用括号您需要这样做:
return dataContext.Friends.Where(r => (r.ToUserId == touserid && r.FromUserId == fromuserid) || (r.ToUserId == fromuserid && r.FromUserId == touserid))
.ToList();
唯一的区别是我删除了第二个
r=>
并修复了括号。将其放入一个包含|
的lambda中,而不是|
使用两个单独的lamba:
return dataContext.Friends.Where(r => (r.ToUserId == touserid && r.FromUserId == fromuserid) || (r.ToUserId == fromuserid&& r.FromUserId == touserid)).ToList();
@赛义德
应该是
|| (r => r.ToUserId == fromuserid && r.FromUserId == touserid )).ToList();
注意“fromuserid&”之间的空格。MAnoj,我的代码中有空格,我不知道为什么在发布时没有空格
|| (r => r.ToUserId == fromuserid&& r.FromUserId == touserid )).ToList();
|| (r => r.ToUserId == fromuserid && r.FromUserId == touserid )).ToList();