private async void View_SaveTask()
        {
            var messages = "";

            if (View.NotifyAboutFinish && !emailService.IsValidEmail(View.SelectedEmail))
            {
                messages += "Укажите валидный адрес электронной почты!\n";
            }
            bool pathIsNull;

            if ((pathIsNull = string.IsNullOrWhiteSpace(View.SelectedPath)))
            {
                messages += "Не заполнен путь для бэкапа!\n";
            }
            if (!pathIsNull && !Directory.Exists(View.SelectedPath))
            {
                messages += "Такого путь не найден в системе!\n";
            }
            if (View.SelectedDatabasesList.Count == 0)
            {
                messages += "Необходимо выбрать хотя бы одну базу данных!\n";
            }
            if (string.IsNullOrWhiteSpace(View.Caption))
            {
                messages += "Не задано название задачи!\n";
            }
            if (!string.IsNullOrWhiteSpace(messages))
            {
                View.ShowError(messages);
                return;
            }
            await pathService.SaveBackupPath(View.SelectedPath);

            if (View.NotifyAboutFinish)
            {
                await emailService.SaveEmail(View.SelectedEmail);
            }
            var schedules        = scheduleService.GetAllSchedules();
            var selectedSchedule = schedules.Where(x => x.Name == View.SelectedSchedule).FirstOrDefault();
            var taskModel        = new TaskModel()
            {
                Id   = View.Id,
                Name = View.Caption,
                SelectedDatabases = View.SelectedDatabasesList,
                SelectedEmail     = View.SelectedEmail,
                SelectedPath      = View.SelectedPath,
                NotifyAboutFinish = View.NotifyAboutFinish,
                Enabled           = View.TaskIsEnables,
                SQLServer         = View.SQLServer,
                SelectedSchedule  = selectedSchedule
            };
            await taskService.SaveTask(taskModel);

            View.Close();
        }
 private async void View_CreateTaskByTemplate()
 {
     try
     {
         if (!string.IsNullOrWhiteSpace(View.PathToBackup))
         {
             await pathService.SaveBackupPath(View.PathToBackup);
         }
         var model = new TaskModel()
         {
             AllDatabases      = View.AllDatabases,
             SelectedDatabases = View.DatabasesToBackup,
             Name      = "Создать новую задачу",
             SQLServer = backupService.GetCurrentSQLServerInstanceName()
         };
         Controller.Run <TaskDetailsPresenter, TaskModel>(model);
     }
     catch (Exception ex)
     {
         View.ShowError(ex.Message);
     }
 }