我正在阅读Linq to Entities。
ObjectQuery<T>
在这些文档中具有突出的功能,但我不太了解它是什么。从我阅读的内容来看,它是代表查询的对象。我一直以为,当我编写Linq查询时,会得到一个ObjectQuery<T>
,因此我可以a)进一步编写它或b)枚举它,以便它从数据库中获取数据。
IQueryable
与ObjectQuery
有何不同?IQueryable
到达ObjectQuery
吗?链接:
IQueryable
它是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