я создал два объекта (упрощенный) в C#:LINQ: отображение результатов из пустых списков
class Log {
entries = new List<Entry>();
DateTime Date { get; set; }
IList<Entry> entries { get; set; }
}
class Entry {
DateTime ClockIn { get; set; }
DateTime ClockOut { get; set; }
}
Я использую следующий код для инициализации объектов:
Log log1 = new Log() {
Date = new DateTime(2010, 1, 1),
};
log1.Entries.Add(new Entry() {
ClockIn = new DateTime(0001, 1, 1, 9, 0, 0),
ClockOut = new DateTime(0001, 1, 1, 12, 0, 0)
});
Log log2 = new Log()
{
Date = new DateTime(2010, 2, 1),
};
Метод ниже используется для получения журналов Дата:
var query =
from l in DB.GetLogs()
from e in l.Entries
orderby l.Date ascending
select new
{
Date = l.Date,
ClockIn = e.ClockIn,
ClockOut = e.ClockOut,
};
результат вышеупомянутого запроса LINQ является:
/*
Date | Clock In | Clock Out
01/01/2010 | 09:00 | 12:00
*/
Мой вопрос: как лучше всего переписать запрос LINQ выше, чтобы включить результаты второго объекта, созданного мной (Log2), поскольку он имеет пустой список. Другими словами, я хотел бы отображать все даты, даже если у них нет значений времени.
Ожидаемый результат будет:
/*
Date | Clock In | Clock Out
01/01/2010 | 09:00 | 12:00
02/01/2010 | |
*/
Вам нужно отправить функцию 'executeQuery' ..., так как здесь все важные вещи происходят. –
Есть ли связь между Записями и журналами? – Nix