public Task <IEnumerable <DailyTodoItemBlock> > DailyTodoItemBlocksQueryAsync(GetDailyTodoItemBlocksSearchArgs searchArgs)
        {
            var _ = searchArgs != null ? "" : throw new ArgumentNullException();

            var blocks = m_dataRepo.DailyTodoItemBlocks.FindAll(b =>
                                                                (searchArgs.Date == null || searchArgs.Date == b.DTodoItem.TodoDate)

                                                                && (searchArgs.TimeIntervalStart == null || searchArgs.TimeIntervalStart <= b.StartTime)

                                                                && (searchArgs.TimeIntervalEnd == null || searchArgs.TimeIntervalEnd > b.StartTime)

                                                                && (searchArgs.IsCompleted == null || searchArgs.IsCompleted == b.IsCompleted)
                                                                );

            return(Task.FromResult((IEnumerable <DailyTodoItemBlock>)blocks));
        }
        public async Task <IEnumerable <DailyTodoItemBlock> > DailyTodoItemBlocksQueryAsync(GetDailyTodoItemBlocksSearchArgs searchArgs)
        {
            var _       = searchArgs != null ? "" : throw new ArgumentNullException();
            var results = await m_dbContext.DailyTodoItemBlocks
                          .Where(b =>
                                 (searchArgs.TimeIntervalStart == null || searchArgs.TimeIntervalStart <= b.StartTime)

                                 && (searchArgs.TimeIntervalEnd == null || searchArgs.TimeIntervalEnd > b.StartTime)

                                 && (searchArgs.IsCompleted == null || searchArgs.IsCompleted == b.IsCompleted)
                                 )
                          .ToListAsync();

            if (searchArgs.Date != null)
            {
                results = results.Where(b => searchArgs.Date.Equals(b.DTodoItem.TodoDate)).ToList();
            }

            return(results);
        }