public void backup_init_primary(List <LSDB> list_lsdb, string primary_server)
        {
            string result = "";
            string command_backup_init = "";

            //var self = (BackgroundWorker)sender;

            builder = new SqlConnectionStringBuilder
            {
                DataSource         = primary_server.Trim(), // tb_primary.Text.Trim();   // update me
                IntegratedSecurity = true,
                //builder.UserID = "sa";              // update me
                //builder.Password = "******";      // update me
                InitialCatalog = "master"
            };

            if (list_lsdb.Count == 0)
            {
                result = "Empty list. Get list of databases and select items in list, please.";
                //return result;
            }

            foreach (LSDB item in list_lsdb)
            {
                command_backup_init += "BACKUP DATABASE [" + item.database_name + "] TO DISK = '" + item.src_share_path + "\\FULL_INIT_" + item.database_name + ".bak' WITH CHECKSUM, FORMAT, INIT, STATS = 10; ";
                //command_backup_init += " RaisError('Backup completed for database = " + item.database_name + "', 1, 1) With NoWait; ";
            }

            try
            {
                SqlCommandWithProgress run_cmd = new SqlCommandWithProgress();
                ////run_cmd.ExecuteNonQueryWithEvents(builder.ConnectionString, command_backup_init, s => Console.WriteLine(s));

                run_cmd.ExecuteNonQueryWait(builder.ConnectionString, command_backup_init, s => Console.WriteLine(s));
            }
            catch (SqlException e)
            {
                //MessageBox.Show(e.Message);
                result = e.ToString();
                Console.WriteLine(e.ToString());
            }

            //return result;
        }
        public void restore_init_secondary(List <LSDB> list_lsdb, string pri_server, string sec_server, string backup_share, string mdf_path, string ldf_path)
        {
            string result = "";
            //string command_restore_init = "";

            string restore_command_secondary = get_restore_cmd_from_primary(list_lsdb, pri_server, backup_share, mdf_path, ldf_path);

            if (restore_command_secondary != "")
            {
                builder = new SqlConnectionStringBuilder
                {
                    DataSource         = sec_server, // tb_primary.Text.Trim();   // update me
                    IntegratedSecurity = true,
                    //builder.UserID = "sa";              // update me
                    //builder.Password = "******";      // update me
                    InitialCatalog = "master"
                };


                try
                {
                    //await
                    SqlCommandWithProgress run_cmd = new SqlCommandWithProgress();
                    ////run_cmd.ExecuteNonQueryWithEvents(builder.ConnectionString, command_backup_init, s => Console.WriteLine(s));

                    run_cmd.ExecuteNonQueryWait(builder.ConnectionString, restore_command_secondary, s => Console.WriteLine(s));
                }
                catch (SqlException e)
                {
                    //MessageBox.Show(e.Message);
                    result = e.ToString();
                    Console.WriteLine(e.ToString());
                }
            }

            //return result;
        }