Loading [MathJax]/jax/input/TeX/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >IQueryable<T>类对象

IQueryable<T>类对象
EN

Stack Overflow用户
提问于 2014-05-11 07:48:55
回答 2查看 77关注 0票数 0

这行返回什么样的对象?我怎样才能看到它的元数据来查看继承和方法呢?

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
IQueryable<Product> products = repository.Products
                        .OrderBy(p => p.ProductID)
                        .Skip((page - 1) * PageSize)
                        .Take(PageSize);

在调试模式中,我看到它返回以下对象:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
System.Collections.Generic.List`1[SportsStore.Domain.Entities.Product].OrderBy(p => p.ProductID).Skip(3).Take(3)
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2014-05-11 08:01:31

它并没有像你所假设的那样返回一个对象。它返回的是一个“查询”(一个实现IQueryable<Product>的对象),它能够在调用代码调用foreach时遍历并返回一组对象(类型为Product)。在调用代码调用foreach之前,它实际上不会处理查询。

您可以将它(返回对象)视为一组指令,说明如何处理、切片、骰子和筛选您开始使用的对象集(repository.Products),并从该初始集生成一组新的对象。

在调用foreach之前,代码实际上不会生成这个新集。如果您希望实际构建这个新集(因此您可以自己操作它或迭代它),那么您可以像@MotoSV所描述的那样在它上调用ToList()

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
List<Product> products = repository.Products
                    .OrderBy(p => p.ProductID)
                    .Skip((page - 1) * PageSize)
                    .Take(PageSize).ToList();
票数 4
EN

Stack Overflow用户

发布于 2014-05-11 07:59:05

它将类型为IQueryableProducts返回给Product实例的集合。如果您想查看products的内容,那么在LINQ语句上放置一个断点,跨过这一行,然后悬停在products变量上,查看它的内容。

注意,您可能必须在LINQ语句的末尾执行一个ToList(),以查看结果,因为它们可能尚未从您的存储库中返回。检查Take方法是否“急切”加载结果。如果您的存储库是对象的集合,则不需要ToList,但是如果您正在访问数据库,即通过实体框架访问数据库,那么它将是必需的。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23594686

复制
相关文章
IEnumerable<T>和IQueryable<T>区分
LINQ查询方法一共提供了两种扩展方法,在System.Linq命名空间下,有两个静态类:Enumerable类,它针对继承了IEnumerable<T>接口的集合进行扩展;Queryable类,针对继承了IQueryable<T>接口的集合进行扩展。我们会发现接口IQueryable<T>实际也是继承了IEnumerable<T>接口的,既然这样微软为什么要设计出两套扩展方法呢?
CherishTheYouth
2019/09/11
9270
IEnumerable<T>和IQueryable<T>区分
IQueryable与foreach的困惑?
IQueryable<Product> query = db.Products; foreach (string keyword in keywords) { string temp = keyword;     query = query.Where(p => p.Description.Contains(temp)); } 与 IQueryable<Product> query = db.Products; foreach (string keyword in keywords) {       
菩提树下的杨过
2018/01/22
9480
类对象 与 类的对象
一、类对象 1.创建类对象 Class<?> class1 = Class.forName("d01_student.Student"); 2.类对象方法(反射) 2.1构造方法 Class<?> c
2020/10/23
1.1K0
(转载)IQueryable和IEnumerable
第一篇:https://www.cnblogs.com/zgqys1980/p/4047315.html;
CherishTheYouth
2019/09/11
5440
(转载)IQueryable和IEnumerable
IQueryable与IEnumberable的区别
转自 http://www.cnblogs.com/fly_dragon/archive/2011/02/21/1959933.html
CherishTheYouth
2019/09/11
5460
IQueryable与IEnumberable的区别
C#内建接口:IQueryable
IQueryable是 IEnumerable 接口的子接口,相比之下提供了更丰富的查询功能。其主要用于 LINQ(Language Integrated Query)查询,它允许我们在编写类型安全的查询表达式时,将查询操作推迟到实际执行查询的时候,以便进行更有效的查询优化。
宿春磊Charles
2023/09/08
3220
【Java】基础14:Scanner类、Random类、ArrayLis​t类
就比如计算1到100的数值之和,如果要计算1到50的呢?就得修改Java代码,但若是有了Scanner,直接在键盘上修改数值就可以了。
刘小爱
2020/07/29
6570
.NET深入解析LINQ框架(四:IQueryable、IQueryProvider接口详解)
在开始看本篇文章之前先允许我打断一下各位的兴致。其实这篇文章本来是没有打算加“开篇介绍”这一小节的,后来想想还是有必要反馈一下读者的意见。经过前三篇文章的详细讲解,我们基本上对LINQ框架的构成原理有了一个根本的认识,包括对它的设计模型、对象的模型等,知道LINQ的查询表达式其实是C#之上的语法糖,不过这个糖确实不错,很方便很及时,又对一系列的LINQ支撑原理进行了大片理论的介绍,不知道效果如何;
王清培
2019/03/01
1.5K0
.NET深入解析LINQ框架(四:IQueryable、IQueryProvider接口详解)
C++类和对象 | 类和对象
C++中对象的类型称为类,类代表了某一批对象的共性和特征,类是对象的抽象,而对象是类的具体实例, 类是抽象的,不占用内存,而对象是具体的,占用 存储空间,这点很重要,读者需要牢记。
小林C语言
2021/01/13
8180
类的本质-类对象
今天整理了下自己电脑里的一些碎片笔记,时间有限只整理了这篇文章——类的本质,大家可以进行参考。
VV木公子
2018/06/05
9.3K1
类的本质-类对象
python 面向对象、类、对象
class 类 object 对象 object-oriented programming 面向对象,简称OOP attribute 属性 method 方法 inheritance 继承
py3study
2020/01/10
1.3K0
面向对象——对象和类
面向对象——对象和类 类和对象是我们java包中不可缺少的部分 我们在一个包中常常只包含一个main方法,其他部分均为类,为main提供服务 面向对象和面向过程 要了解面向对象,同时应该明白面向过程的意义: 面向过程:步骤清晰,第一步该做什么,第二步该做什么... ​ 面向过程适合于处理简单的问题 面向对象:物以类聚,分类的思维模式,将整体分类,再逐个思考 ​ 面向对象适合于处理复杂的问题 对于描述复杂的事物,应该先用面向对象进行分类,再对分类出来的各小部分面向过程 什么是面
秋落雨微凉
2022/10/25
6630
Java:对象and类?
Java的对象和类,我们可以简单理解为对象是由属性和行为构成的,既然有属性也就会产生数据。这里我们可以将类理解为用于描述一类对象的行为和状态,即把类可以看做一个模板,这个模板将会包括一些关于对象的行为或状态。
小Bob来啦
2021/10/21
1K0
Java:对象and类?
Python类对象
属性引用 使用 Python 中所有属性引用所使用的标准语法: obj.name。 有效的属性名称是类对象被创建时存在于类命名空间中的所有名称。 因此,如果类定义是这样的:
py3study
2020/01/16
7590
[Python基础11]类和对象
此时,出现了一个模糊的概念:对象; 那什么是对象呢? 从哲学上说:一切皆对象。 路人甲说:“对象就是看得见摸的着的东西。” 路人乙说:“关于这个东西和对象,有木有更加细致一点的描述呢?” 路人丙说:“对象,就是看得见摸的着的,可能有自己的特征,可能有自己的行为的一种东西。 比如我们都看得见的电脑,电脑有自己的特征<电脑品牌、电脑的尺寸、电脑CPU型号、电脑的硬盘容量等等>,电脑也有自己的行为<播放视频、播放音乐、玩游戏、写文档等等>。
周小董
2022/04/12
4140
类与对象
默认情况下,JShell提供了一些常用包的导入 可以输入以下命令列出所有导入的包:
程裕强
2019/05/27
5950
Python - 面向对象编程 - 什么是 Python 类、类对象、实例对象
https://www.cnblogs.com/poloyy/p/15178423.html
小菠萝测试笔记
2021/09/07
9430
类与对象
对象是特征与技能的结合体,我可能有身高体重、而你也有身高体重,所以你会说你像我,但是你一定不会说你像阿猫阿狗。并且我和你其实就可以说成是一类,而你和选课系统不能说是一类,因此给出类的定义:类就是一系列对象相似的特征与技能的结合体。
py3study
2020/01/15
6280
对象与类
1.对象与类 1.1对象 对象是由属性和方法组成的:是一个无序键值对的集合,指的是一个具体的事物 属性:事物的特征,在对象中用属性来表示(常用名词) 方法:事物的行为,在对象中用方法来表示(常用动词) 1.1.1创建对象 //以下代码是对对象的复习 //字面量创建对象 var ldh = { name: '刘德华', age: 18 } console.log(ldh); //构造函数创建对象 function Star(name, age) { this.name
梨涡浅笑
2020/10/27
4940
对象与类
类和对象
类和对象的概念 面向对象编程(OOP)的本质: 以类的方式组织代码,以对象的方式组织(封装)数据。 面向对象思维:OOA、OOD 对象:是具体的事物 类:是对对象的抽象(抽象 抽出象的部分) 先有具体的对象,然后抽象各个对象之间象的部分,归纳出类通过类再认识其他对象 把学生看成一个类如何归纳?(这里我只是举例子) 学生的属性有学号、年龄、性别、姓名、体重 学生的行为有学习、打招呼 学生很抽象,那么具体一点 比如张三、李四,那么这就是对象了 以类的方式组织代码,以对象的方式组织(封装)数据!!!思考这句话
帅飞
2019/01/22
8271

相似问题

如何从IQueryable<T>获得IQueryable<IQueryable<T>>?

10

IQueryable到IQueryable<T>

12

IQueryable对IQueryable<T>

20

返回IQueryable<T>或不返回IQueryable<T>

30

IQueryable<t>或IList<t>

20
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文