对于多 table 连接,使用 Entity Framework 还是 ADO.NET 是否合适?
Whether it is appropriate to use Entity Framework versus ADO.NET for multi table joins?
我正在编写一个带有几个端点的 Web API。每个端点查询数据库,它涉及 2 到 6 tables 之间的连接。
我以前使用过 Entity Framework,但仅用于单个 table。所以我想问一下,对多个 table 连接使用 Entity Framework 是否合适,还是应该坚持使用基于 ADO.NET 的 SQL 查询?
是的。 EF 使您能够使用 LINQ 查询对您的实体表达查询逻辑,并将转换为 SQL。它是 EF 的核心功能,在 Web API 中经常看到它用于从数据库中获取实体,然后将实体序列化为 JSON 以发送给客户端。
使用 EF 的内置数据库到实体映射和 .NET 内置的实体到JSON 映射使得编写 Web API 变得非常简单。
当然你应该监控 EF 生成的 SQL,并且在某些情况下你可能会下降到 Raw SQL Queries、Dapper 或 ADO.NET。但对于构建简单 Web API 的基本用例,EF Core + ASP.NET Core 是最简单的答案。
我正在编写一个带有几个端点的 Web API。每个端点查询数据库,它涉及 2 到 6 tables 之间的连接。
我以前使用过 Entity Framework,但仅用于单个 table。所以我想问一下,对多个 table 连接使用 Entity Framework 是否合适,还是应该坚持使用基于 ADO.NET 的 SQL 查询?
是的。 EF 使您能够使用 LINQ 查询对您的实体表达查询逻辑,并将转换为 SQL。它是 EF 的核心功能,在 Web API 中经常看到它用于从数据库中获取实体,然后将实体序列化为 JSON 以发送给客户端。
使用 EF 的内置数据库到实体映射和 .NET 内置的实体到JSON 映射使得编写 Web API 变得非常简单。
当然你应该监控 EF 生成的 SQL,并且在某些情况下你可能会下降到 Raw SQL Queries、Dapper 或 ADO.NET。但对于构建简单 Web API 的基本用例,EF Core + ASP.NET Core 是最简单的答案。