获取项目索引(ROWNUM) [英] Get item index (rownum)
本文介绍了获取项目索引(ROWNUM)的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我有10个元素表
IQuerable<IEntity> query = dataRep.Get<IEntity>()
.Query();
我需要的选择的索引(ROWNUM) OBJ
没有得到所有的表项
var obj = query.Where( x => x.Name == "testName")
.FirstOrDefault();
在简单的SQL做工精细:
The simple sql work fine :
select name, id, r from
(
select name, id, rownum r from collections order by id
) where name = 'testName';
如何在LINQ的做NHibernate的?
How do this in Linq to NHibernate ?
编辑:
我试图添加到 IEntity
类属性 ROWNUMBER
和
<property name="RowNumber" formula="rownum" />
但经过
But after
var index = query.Where( x => x.Name == "testName")
.Select( x => x.RowNumber)
.FirstOrDefault();
获取总是 1
值
推荐答案
你能不只是直接过滤查询?
Can you not just filter the query directly?
IQuerable<IEntity> query = dataRep.Get<IEntity>()
.Query()
.FirstOrDefault(x => x.Name == "testName");
编辑:
要获得该项目你可以投射到一个匿名类型:
To get the item you can project into an anonymous type:
var query = (from data in dataRep.Get<IEntity>().Query()
where Name == "testName"
select new
{
id = data.id,
rowNumber = data.rowNumber
}).FirstOrDefault();
这篇关于获取项目索引(ROWNUM)的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文