ObjectQuery-它是什么,如何获取?

问题描述 投票:1回答:1

我正在阅读Linq to Entities

ObjectQuery<T>在这些文档中具有突出的功能,但我不太了解它是什么。从我阅读的内容来看,它是代表查询的对象。我一直以为,当我编写Linq查询时,会得到一个ObjectQuery<T>,因此我可以a)进一步编写它或b)枚举它,以便它从数据库中获取数据。

  1. IQueryableObjectQuery有何不同?
  2. 文章中提到的“命令树查询”是什么?与表达式树有何不同]
  3. 我可以在编写Linq查询时从IQueryable到达ObjectQuery吗?

链接:

IQueryable

c# entity-framework linq-to-entities
1个回答
0
投票

它是System.Data的一部分,与LINQ有所不同。由于它将SQL-String转换为对象,因此如果出于某些原因您不想使用LINQ或EF,则可能会很有用。 EF中的较新版本为

https://docs.microsoft.com/en-us/dotnet/api/system.data.objects.objectquery-1?view=netframework-4.8

将与]相同>

context.SqlQuery("Select * from Students").ToList<Student>();

其中后者中的上下文在第一行中是对象上下文和DBContext。并不是所有类型都强健,因此“简单”或“快速与肮脏”。不推荐的方式。

推荐的方法是使用DbSet 并且根本不处理SQL字符串(如果可以避免的话。)>

© www.soinside.com 2019 - 2024. All rights reserved.