asp.net – 如何添加ROW_NUMBER到LINQ查询或实体?
发布时间:2020-12-15 18:36:45 所属栏目:asp.Net 来源:网络整理
导读:我被这个简单的数据问题所困扰。 我正在使用Entity框架并拥有产品数据库。我的结果页面返回这些产品的分页列表。现在我的结果按每个产品的销售数量排序,所以我的代码如下所示: return Products.OrderByDescending(u = u.Sales.Count()); 这将返回我的实体
我被这个简单的数据问题所困扰。
我正在使用Entity框架并拥有产品数据库。我的结果页面返回这些产品的分页列表。现在我的结果按每个产品的销售数量排序,所以我的代码如下所示: return Products.OrderByDescending(u => u.Sales.Count()); 这将返回我的实体的IQueryable数据集,按销售数量排序。 我希望我的结果页面显示每个产品的排名(在数据集中)。我的结果应该是这样的: Page #1 1. Bananas 2. Apples 3. Coffee Page #2 4. Cookies 5. Ice Cream 6. Lettuce 我期望我只想使用SQL ROW_NUMBER变量在我的结果中添加一列…但是我不知道如何将此列添加到我的结果数据表中。 我的结果页面包含一个foreach循环,但是由于我使用一个分页集,我猜猜使用这个数字来伪造一个排名不会是最好的方法。 所以我的问题是,在这种情况下,如何在查询结果中添加一个ROW_NUMBER列? 解决方法
使用
indexed overload of Select:
var start = page * rowsPerPage; Products.OrderByDescending(u => u.Sales.Count()) .Skip(start) .Take(rowsPerPage) .AsEnumerable() .Select((u,index) => new { Product = u,Index = index + start }); (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- asp.net – ResetPassword Token它存储的方式和位置?
- asp.net – 在IE10中不应该“X-UA兼容IE =边缘”头覆盖“兼
- asp.net-mvc – MVC发布复杂对象的列表
- asp.net – 如何使用ListItems初始化DropDownList
- asp.net – 从另一个域配置IIS身份验证
- asp.net-mvc – HttpResponseMessage内容不会显示PDF
- 有人创建安装程序来部署内部asp.net Web应用程序吗?
- asp.net-mvc – 如何更改ASP.NET MVC中的默认验证错误消息?
- asp.net-mvc – ViewModel中的MVC3 RouteUrl
- asp.net-mvc – MVC – 更改下拉列表中的默认文本
推荐文章
站长推荐
热点阅读