【问题标题】:What is the difference between in-line SQL queries and queries fired by Entity Framework?内联 SQL 查询和实体框架触发的查询有什么区别?
【发布时间】:2013-10-31 19:38:41
【问题描述】:

我是实体框架的新手。

我在想编写内联 SQL 查询和实体框架之间有什么区别。如果内联 SQL 查询容易受到 SQL 注入攻击,那么 Entity Framework 如何更安全?

我看到的唯一区别是我们使用 LINQ 与 Entity Framework 交互,但内部 Entity Framework 类以某种语言与数据库交互。与内联查询相比,它的安全性如何?

【问题讨论】:

    标签: asp.net entity-framework orm


    【解决方案1】:

    Entity Framework 具有用于参数化查询的内置功能,可防止注入在 SQL 注入中很重要的单引号等字符。只要您使用 ADO.NET 或类似框架以正确的方式参数化和构建查询,内联 SQL 也可以是安全的。

    最后,如果您不清理输入并参数化查询,内联 SQL 可能会非常糟糕。 Entity Framework 只是在幕后为您完成所有这些工作,使其本质上更安全。

    【讨论】:

      猜你喜欢
      • 2012-08-03
      • 1970-01-01
      • 1970-01-01
      • 2015-07-16
      • 2020-02-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-03-14
      相关资源
      最近更新 更多