2016-08-07 3 views
0

хочу знать, что уникальные есть по дате Другими словами, я не буду использовать его дважды по одному IP-адресу, и мне бы хотелось, чтобы поле даты . Что я сделал до сих пор.Отличный по LINQ Лучший способ И быстро

db.Exposures.DistinctBy(d => d.UserIP).Select(o =>o.ExpouserDate).ToList(); 

Но это занимает слишком много времени, есть лучший способ Прощение за мой английский и заранее спасибо

ответ

3

Вы могли бы попробовать что-то вроде этого:

var res = db.Exposures 
      .GroupBy(ex => ex.UserIp) 
      .Select(gr => gr.Max(x = >x.ExpouserDate)); 
+0

это «Distinct» по двум параметрам Date And IP , но я хочу «Определить» по IP и выбрать дату –

+0

@ Yitzhakor50 Итак, пусть у нас есть 50 IP и 30 уникальных из них, вы хотите эти 30 IP-адресов? Если это правда, какая дата? вам нужна последняя дата каждого из них? – Christos

+0

Это ваш реальный ответ db.Exposures .GroupBy (ех => exe.ExpouserDate) .Select (гр => нового { Date = gr.Key, DistinctIps = gr.Select (х => x.UserIP) .Distinct() }). Выберите (o => o.Date) .ToList(); –

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