在 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();