小编典典

条件Linq查询

c#

我们正在研究一个日志查看器。使用时可以选择按用户,严重性等进行过滤。在Sql天内,我将添加到查询字符串中,但是我想使用Linq进行过滤。如何有条件地添加子句?


阅读 279

收藏
2020-05-19

共1个答案

小编典典

如果您只想过滤通过特定条件的情况,请执行以下操作

var logs = from log in context.Logs
           select log;

if (filterBySeverity)
    logs = logs.Where(p => p.Severity == severity);

if (filterByUser)
    logs = logs.Where(p => p.User == user);

这样,您的表达式树将完全符合您的要求。这样,创建的SQL正是您所需要的,而且仅此而已。

2020-05-19