小编mat*_*ati的帖子

FromSqlInterpolated/FromSqlRaw 中的 LIKE 运算符不起作用,但流畅的 API 或 LINQ 表达式可以

我正在尝试使用 .NET 3.1 上的 EF Core。我有以下代码摘录:

public static async Task<Task> getWithName(HttpContext c) {
            var name = c.Request.RouteValues["name"].ToString();

            // with API - WORKS!
            var authors = await DB.Authors.Where(a => a.first_name.Contains(name)).ToListAsync();
            // with raw SQL interpolated - BROKEN
            var authors2 = await DB.Authors.FromSqlInterpolated($"SELECT * FROM author WHERE first_name like '%{name}%'").ToListAsync();
            // with raw SQL parametrized - BROKEN
            var authors3 = await DB.Authors.FromSqlRaw("SELECT * FROM author WHERE first_name like '%{0}%'", name).ToListAsync();
            // with LINQ expressions - WORKS!
            var authors4 = await (from a …
Run Code Online (Sandbox Code Playgroud)

c# linq postgresql entity-framework-core

4
推荐指数
1
解决办法
2331
查看次数

标签 统计

c# ×1

entity-framework-core ×1

linq ×1

postgresql ×1