2013-10-14 2 views
0

Я использую EF и LINQ (VB-NET), и я хочу найти объект (строку) с максимальным значением ID. Я хочу сделать что-то вроде этого:Функция возвращает объект с максимальным значением

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

Но мне нужна функция GetMaxObj, которая возвращает объект йоту макс ID значение.

Function GetMaxObj (function) 
End function 

Где функция ex. Функция (f) f.ID. Я хочу, чтобы часть выбора принимала plase на сервере, я не хочу возвращать весь набор результатов, только объект максимального ID.

Я хочу использовать функцию:

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

Я не могу понять, как я могу написать свою функцию ... может кто-нибудь помочь мне с этим, пожалуйста? Заранее спасибо

ответ

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

Спасибо за ваш ответ! Но это вернет только максимальное значение, а не весь объект? Мне нужен весь объект ... – Liss

+0

Попробуйте со списком .Max() он возвращает объект Item –

+0

Еще раз спасибо! Но как будет выглядеть мой параметр для моей функции? Как я могу передать свой параметр: «function (f) f.ID» к моей функции, мне нужно сделать что-то вроде этой функции GetMaxObj (ByVal maxFilter As IQueryable) или ... ?? – Liss

Смежные вопросы