protected void CreateInitialLists()
        {
            var document = this.TaskRepository.RetrieveInitialLists();

            if (document.Nodes().Count() == 0)
            {
                return;
            }

            var todoController = new TodoController();

            todoController.ControllerContext = this.ControllerContext;

            foreach (var taskList in document.Descendants("TaskList"))
            {
                var taskListName     = taskList.Element("Name").Value;
                var taskListIsPublic = bool.Parse(taskList.Element("IsPublic").Value);

                var createdTaskList = this.TaskRepository.CreateList(taskListName, taskListIsPublic);

                if (createdTaskList == null || string.IsNullOrEmpty(createdTaskList.ListId))
                {
                    return;
                }

                foreach (var task in taskList.Descendants("Task"))
                {
                    var newTask = new Task
                    {
                        ListId     = createdTaskList.ListId,
                        Subject    = task.Element("Subject").Value,
                        DueDate    = string.IsNullOrEmpty(task.Element("DueDate").Value) ? DateTime.MaxValue : DateTime.Parse(task.Element("DueDate").Value, CultureInfo.InvariantCulture),
                        IsComplete = bool.Parse(task.Element("IsComplete").Value)
                    };

                    todoController.CreateTask(newTask);
                }
            }
        }
        protected void CreateInitialLists()
        {
            var document = this.TaskRepository.RetrieveInitialLists();

            if (document.Nodes().Count() == 0)
            {
                return;
            }

            var todoController = new TodoController();
            todoController.ControllerContext = this.ControllerContext;

            foreach (var taskList in document.Descendants("TaskList"))
            {
                var taskListName = taskList.Element("Name").Value;
                var taskListIsPublic = bool.Parse(taskList.Element("IsPublic").Value);

                var createdTaskList = this.TaskRepository.CreateList(taskListName, taskListIsPublic);

                if (createdTaskList == null || string.IsNullOrEmpty(createdTaskList.ListId))
                {
                    return;
                }

                foreach (var task in taskList.Descendants("Task"))
                {
                    var newTask = new Task
                    {
                        ListId = createdTaskList.ListId,
                        Subject = task.Element("Subject").Value,
                        DueDate = string.IsNullOrEmpty(task.Element("DueDate").Value) ? DateTime.MaxValue : DateTime.Parse(task.Element("DueDate").Value, CultureInfo.InvariantCulture),
                        IsComplete = bool.Parse(task.Element("IsComplete").Value)
                    };

                    todoController.CreateTask(newTask);
                }
            }
        }