Новейшая цена за предмет в LINQ / LAMBDA - PullRequest
1 голос
/ 09 июня 2011

Как сформулировать следующее в LINQ с выражениями LAMBDA.

Дано (для простоты - это на самом деле позднее объединение) таблица с полями:

  • Item
  • Цена
  • Отметка

который сопоставлен с классом. Я использую BlToolkit, но также может быть LINQ или EF - без разницы.

Мне нужен объект с Item = 2 и самой высокой временной меткой (новейшей) и / или запросом ВСЕХ предметов, но ТОЛЬКО самого последнего объекта.

Как мне сформулировать это?

Я понимаю, что, вероятно, будет задействован подселект, но у меня проблема с поиском правильного синтаксиса.

1 Ответ

3 голосов
/ 09 июня 2011

Используя свободный синтаксис, элемент с самой высокой отметкой времени и Item==2:

var item= table.Where(i => i.Item == 2)
               .OrderByDescending(i => i.Timestamp)
               .SingleOrDefault();
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...