2013-10-14 95 views
0

我正在使用EF和LINQ(VB-NET),我想查找具有最大ID值的对象(行)。 我想要做这样的事情:函数返回最大值的对象

var item = db.Items.OrderByDescending(i => i.Value).FirstOrDefault(); 

但我需要一个函数Ge​​tMaxObj返回的对象丝毫最大ID值。

Function GetMaxObj (function) 
End function 

其中函数是ex。功能(f)f.ID. 我希望选择部分在服务器上运行,我不想返回整个结果集,只返回最大ID对象。

我想用我的功能是这样的:

item = unitOfWork.MyRepository.GetMaxObj(Function(f) f.ID) 

我想不通我怎么能写我的功能...有人可以帮助我吗? 在此先感谢

回答

0
Dim query = db.Items.Max(Function(x) x.value) 
+0

感谢您的回答!但是这只会返回最大值而不是整个对象?我需要整个对象... – Liss

+0

尝试使用列表.Max()它返回一个Items对象 –

+0

再次感谢!但是我的函数的参数是什么样的?我怎么能传递我的参数:“函数(f)f.ID”我的功能,我需要做这样的功能GetMaxObj(ByVal maxFilter As IQueryable)或...? – Liss