Ejemplo n.º 1
0
        public IEnumerable <DbTaskList> GetTaskLists()
        {
            var readTasksSql = "SELECT title, id_list, id, description, deadline, is_done FROM task";
            var tasksGrouped = ReadEntities(readTasksSql,
                                            r =>
            {
                var task         = new DbTask();
                task.Title       = r.GetString(0);
                task.ListId      = r.GetInt32(1);
                task.Id          = r.GetInt32(2);
                task.Description = r.GetValue(3).ToString();
                task.Date        = r.GetValue(4).ToString();
                task.IsDone      = r.GetBoolean(5);
                return(task);
            }).ToArray().GroupBy(x => x.ListId);

            var readTaskListsSql = "SELECT title, id FROM tasks_list";
            var taskListsSeq     = ReadEntities(readTaskListsSql,
                                                r =>
            {
                var taskList  = new DbTaskList();
                taskList.Name = r.GetString(0);
                taskList.Id   = r.GetInt32(1);
                return(taskList);
            }).ToArray();

            return(taskListsSeq.Select(lst =>
            {
                var tasksGroup = tasksGrouped.FirstOrDefault(x => x.Key == lst.Id);
                lst.Tasks = tasksGroup == null? new DbTask[] { } : tasksGroup.ToArray();
                return lst;
            }).ToArray());
        }
Ejemplo n.º 2
0
 public static TaskList ToTaskList(DbTaskList tasklist)
 {
     return new TaskList(tasklist.Name, tasklist.Uid)
     {
         DbId = tasklist.Id
     };
 }