Exemplo n.º 1
0
        private void ManualExecute(object parameter)
        {
            if (string.IsNullOrEmpty(TaskBackUpPath))
            {
                MessageBoxHelper.MessageBoxShowWarning("请配置文件的路径!");
                return;
            }

            if (!(CurrentPolicy.IsTaskBackUpDataBase || CurrentPolicy.IsTaskBackUpTables))
            {
                MessageBoxHelper.MessageBoxShowWarning("请选择备份类型!");
                return;
            }

            if (TaskBackUpPath.ToLower().StartsWith("c:"))
            {
                if (MessageBoxHelper.MessageBoxShowQuestion("请确认是否将备份文件保存的C盘?") == MessageBoxResult.No)
                {
                    return;
                }
            }

            ExecuteBackUp executeBackUp = new ExecuteBackUp();

            if (CurrentPolicy.BackUpType == BackUpType.DataBase)
            {
                Task.Factory.StartNew(() =>
                {
                    executeBackUp.BackUpDataBase();
                });
            }
            else
            {
                Task.Factory.StartNew(() =>
                {
                    executeBackUp.BackUpTables();
                });
            }
        }
        private void ManualExecute(object parameter)
        {
            if (string.IsNullOrEmpty(TaskBackUpPath))
            {
                MessageBoxHelper.MessageBoxShowWarning("请配置文件的路径!");
                return;
            }

            if (!(CurrentPolicy.IsTaskBackUpDataBase || CurrentPolicy.IsTaskBackUpTables))
            {
                MessageBoxHelper.MessageBoxShowWarning("请选择备份类型!");
                return;
            }

            if (TaskBackUpPath.ToLower().StartsWith("c:"))
            {
                if (MessageBoxHelper.MessageBoxShowQuestion("请确认是否将备份文件保存的C盘?") == MessageBoxResult.No)
                {
                    return;
                }
            }

            if (CurrentPolicy.IsTaskBackUpDataBase)
            {
                var policy = Policys.Where(x => x.BackUpType == BackUpType.DataBase &&
                                           x.DataBaseName == CurrentPolicy.DataBaseName).FirstOrDefault();
                if (policy != null)
                {
                    ExecuteBackUp executeBackUp = new ExecuteBackUp();
                    string        dbName        = policy.DataBaseName;
                    Task.Factory.StartNew(() =>
                    {
                        executeBackUp.BackUpDataBase(dbName);
                    });
                }
                else
                {
                    MessageBoxHelper.MessageBoxShowWarning("未配置全库备份类型的策略,请确认!");
                    return;
                }
            }

            if (CurrentPolicy.IsTaskBackUpTables)
            {
                var policy = Policys.Where(x => x.BackUpType == BackUpType.Tables &&
                                           x.DataBaseName == CurrentPolicy.DataBaseName).FirstOrDefault();
                if (policy != null)
                {
                    ExecuteBackUp executeBackUp = new ExecuteBackUp();
                    string        dbName        = policy.DataBaseName;
                    Task.Factory.StartNew(() =>
                    {
                        executeBackUp.BackUpTables(dbName);
                    });
                }
                else
                {
                    MessageBoxHelper.MessageBoxShowWarning("未配置基础业务备份类型的策略,请确认!");
                    return;
                }
            }
        }