代码之家  ›  专栏  ›  技术社区  ›  Barry Franklin

以这种方式使用dapper是否被视为内联SQL?

  •  1
  • Barry Franklin  · 技术社区  · 5 年前

    我一直在使用这种简洁的方式进行查询(简化的psudeo代码):

    var sql = "SELECT * FROM EMPLOYEE;"
    using (Connection)
    {
        return Connection.Query<Employee>(sql);
    }
    

    我想知道这是否被认为是“内联SQL”,很多人认为这是不好的。

    1 回复  |  直到 5 年前
        1
  •  2
  •   Marc Gravell    5 年前

    是的,这就是内联SQL。然而,内联SQL在任何方面都不是“坏的”;唯一真正“不好”的事情是不使用参数,这是一个精巧的小东西。大多数反对内联SQL的论点都错误地将这两个概念等同起来。关于存储过程和内联SQL的优缺点有很多讨论,但这是主观的,每种方法都有很多优缺点。此外,Dapper还可以使用存储过程 无论如何 .

    事实并非如此 确切地 同样,但我的想法有很多交叉点: https://blog.marcgravell.com/2017/12/dapper-prepared-statements-and-car-tyres.html