在 Linq 查询 EF Core 中使用 Like
Use Like in Linq query EF Core
我在 EF Core 应用程序中有以下方法
public List<Prj_Detail> GetByOrg(string org)
{
var data = _context.Prj_Details.Where(w => w.Account_Name == org).ToList();
return data;
}
在这里而不是 ==
我需要检查 Like
我怎样才能在我的方法中做到这一点
您尝试过使用 Contains 吗?
var data = _context.Prj_Details.Where(w => w.Account_Name.Contains(org)).ToList();
您也可以使用 StartsWith and EndsWith。
更多相关信息。
可以尝试使用 Contains 进行过滤。
请参考以下代码。
取决于 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;
}
就像其他人所说的那样,您可以执行 Contains
运算符,但是在某些情况下,这会导致不必要的 TSQL 转换。相反,您可以使用内置的 Entity Framework 函数,如下所示:
_context.Prj_Details.Where(EF.Functions.Like(w.Account_Name, org)).ToList();
我在 EF Core 应用程序中有以下方法
public List<Prj_Detail> GetByOrg(string org)
{
var data = _context.Prj_Details.Where(w => w.Account_Name == org).ToList();
return data;
}
在这里而不是 ==
我需要检查 Like
我怎样才能在我的方法中做到这一点
您尝试过使用 Contains 吗?
var data = _context.Prj_Details.Where(w => w.Account_Name.Contains(org)).ToList();
您也可以使用 StartsWith and EndsWith。
可以尝试使用 Contains 进行过滤。
请参考以下代码。 取决于 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;
}
就像其他人所说的那样,您可以执行 Contains
运算符,但是在某些情况下,这会导致不必要的 TSQL 转换。相反,您可以使用内置的 Entity Framework 函数,如下所示:
_context.Prj_Details.Where(EF.Functions.Like(w.Account_Name, org)).ToList();