LINQ Присоединиться к столу, затем к групповому мастеру - PullRequest
2 голосов
/ 25 июня 2010

Я пытаюсь вывести таблицу с IDNums + Name + Max (TimeOut-TimeIn). Я хочу только максимальное значение изменения времени для каждого идентификатора, поскольку для каждого идентификатора существует несколько временных записей. У меня есть это до сих пор. Тем не менее, имя, связанное с идентификатором, находится в отдельной таблице. Вот что я попробовал:

from IO_Time in db.IO_Times
join NameTable in db.NamesTable on IO_Time.IDNum equals NameTable.IDNum
orderby SqlMethods.DateDiffMinute(IO_Time.TimeIn, IO_Time.TimeOut) descending
group IO_Time by IO_Time.IDNum into list
select new
{
  ID = list.Key,
  Name = NameTable.Name
  Time = list.Max(t=> t.TimeOut-t.TimeIn)

});

Но, конечно же, NameTable.Name не существует в этом контексте. Как я могу это исправить?

1 Ответ

2 голосов
/ 25 июня 2010

Я думаю это должно сработать ... в основном, это изменение ключа группы, чтобы включить также и имя ... что должно быть хорошо, если у вас уже есть соединение.1004 *

...