无法在LINQ中正确构造WHERE

时间:2014-02-28 14:03:07

标签: c# linq

我似乎无法在LINQ中成功重新创建简单的WHERE语句。在至少有两个条件之前,我的结果集不会被过滤。

我正在尝试重新创建的WHERE语句看起来像这样

WHERE ID = @ID OR Email LIKE @Email OR ScreenName LIKE @ScreenName

现在我的LINQ看起来像这样

 ApplicationData.UserList.Where(u => u.Id == userId || 
                                     u.Email.Contains(email) || 
                                     u.ScreenName.Contains(screenName)).ToList();

应该很直接。似乎无法找到我做错的事。

1 个答案:

答案 0 :(得分:1)

应该

u.Email.Contains(email)

不是

u.Email.Contains(userId.ToString())

因为原始查询使用@ID。