【问题标题】:Use Like in Linq query EF Core [duplicate]在 Linq 查询 EF Core 中使用 Like [重复]
【发布时间】:2019-12-17 08:20:36
【问题描述】:
我在 EF Core 应用程序中有以下方法
public List<Prj_Detail> GetByOrg(string org)
{
var data = _context.Prj_Details.Where(w => w.Account_Name == org).ToList();
return data;
}
这里不是==,我需要检查Like,我该如何在我的方法中做到这一点
【问题讨论】:
标签:
c#
asp.net-mvc
linq
entity-framework-core
ef-core-2.0
【解决方案2】:
可以尝试用包含来过滤。
请参考以下代码。
取决于 LeftRim/RightTrim/upperCase/LowerCase
public List<Prj_Detail> GetByOrg(string org)
{
var data = _context.Prj_Details.Where(w => w.Account_Name.Contains(org)).ToList();
return data;
}
【解决方案3】:
正如其他人所说,您可以使用Contains 运算符,但在某些情况下,这会导致不必要的 TSQL 转换。相反,您可以像这样使用内置的实体框架功能:
_context.Prj_Details.Where(EF.Functions.Like(w.Account_Name, org)).ToList();