В моей коллекции MongoDB есть поле:
{
"EventDate" : ISODate("1974-10-28T13:41:06.499Z")
}
Я хочу, чтобы можно было выполнять поиск только по дате и только по времени. Например:
public class SearchParams
{
public DateTime? FromDate;
public DateTime? ToDate;
public TimeSpan? FromTime;
public TimeSpan? ToTime;
}
Collection.Find(item => item.EventDate.Date >= searchParams.FromDate.Value.Date &&
item.EventDate.Date <= searchParams.ToDate.Value.Date &&
item.EventDate.TimeOfDay >= searchParams.FromTime.Value &&
item.EventDate.TimeOfDay <= searchParams.ToTime.Value);
Но, похоже, это невозможно, поскольку драйвер MongoDB не поддерживает item.EventDate.Date
и item.EventDate.TimeOfDay
Итак, возможно ли иметь одно поле DateTime и выполнять поиск по нему только по дате или только по времени?