示例#1
0
        public ServerBackup ReturnServerBackup(int backupId)
        {
            using (SqlConnection con = new SqlConnection(constring))
                using (SqlCommand cmd = new SqlCommand("ReturnServerBackup", con))
                {
                    ServerBackup backup = new ServerBackup();
                    cmd.CommandType = CommandType.StoredProcedure;
                    SqlParameter id = new SqlParameter("@BackupID", SqlDbType.Int);
                    id.Value = backupId;
                    cmd.Parameters.Add(id);

                    using (SqlDataAdapter da = new SqlDataAdapter(cmd))
                    {
                        DataTable dt = new DataTable();
                        da.Fill(dt);
                        DataRow row = dt.Rows[0];

                        backup = new ServerBackup()
                        {
                            BackupID       = (int)row["BackupID"],
                            Name           = (string)row["Name"],
                            ScheduledTime  = (DateTime)row["ScheduledTime"],
                            Frequency      = (string)row["Frequency"],
                            BackupType     = (string)row["BackupType"],
                            ExpirationDate = (DateTime)row["ExpirationDate"],
                            SQLBackupID    = (int)row["SQLBackupID"]
                        };
                    }

                    return(backup);
                }
        }
示例#2
0
        public ActionResult AddPlan(ServerBackup backup)
        {
            if (ModelState.IsValid)
            {
                backup.DataBaseServer = null;
                db.ServerBackups.Add(backup);
                db.SaveChanges();
                _app.Backups bk = new _app.Backups();

                bk.RefreshBackupLog(backup.DbServerID);
                return(RedirectToAction("index", new { id = backup.DbServerID }));
            }

            var srv = db.DataBaseServers.Find(backup.DbServerID);

            var btl = db.BackupTypes.Where(x => !srv.ServerBackups.Any(y => x.typeID == y.BackupTypeID)).ToList();


            if (btl.Count > 0)
            {
                ViewBag.BackupTypeID = new SelectList(btl,
                                                      "typeID", "typeName");
                ServerBackup bk = new ServerBackup();
                bk.DataBaseServer = srv;
                bk.DbServerID     = srv.ServerID;
                bk.intervalMin    = 1440;
            }


            return(View(backup));
        }
示例#3
0
        public ActionResult AddPlan(int id)
        {
            var srv = db.ServerBackups.Where(x => x.DbServerID == id);

            // var btl = db.BackupTypes.Where(x => !srv.ServerBackups.Any(y => x.typeID == y.BackupTypeID)).ToList();
            //var result = peopleList2.Where(p => !peopleList1.Any(p2 => p2.ID == p.ID));
            var btl = db.BackupTypes.Where(x => !srv.Any(y => x.typeID == y.BackupTypeID)).ToList();

            //  var btl = (from bt in db.BackupTypes where(!srv.ServerBackups.Any(x=> x.BackupTypeID == bt.typeID) )  select new { bt.typeID , bt.typeName }).ToList() ;


            if (btl.Count > 0)
            {
                ViewBag.BackupTypeID = new SelectList(btl,
                                                      "typeID", "typeName");
                ServerBackup bk = new ServerBackup();
                bk.DataBaseServer = db.DataBaseServers.Find(id);
                bk.DbServerID     = id;
                bk.intervalMin    = 1440;

                return(View(bk));
            }



            return(View());
        }
示例#4
0
        public ActionResult Create(ServerBackup serverBackup)
        {
            if (ModelState.IsValid)
            {
                sprocs.MergeBackup(serverBackup);
                return(RedirectToAction("Index", new { serverId = sprocs.ReturnSQLServer(serverBackup.SQLBackupID).Server_ServerID }));
            }
            //ServerBackupVM vm = new ServerBackupVM(0, serverId);
            //ViewBag.Frequency = vm.frequency;
            //ViewBag.BackupType = vm.type;
            //ViewBag.SQLBackup = vm.SQLServer;

            return(View(serverBackup));
        }
示例#5
0
        // GET: ServerBackups/Delete/5
        public ActionResult Delete(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            ServerBackup serverBackup = sprocs.ReturnServerBackup((int)id);

            if (serverBackup == null)
            {
                return(HttpNotFound());
            }
            return(View(serverBackup));
        }
示例#6
0
        public void MergeBackup(ServerBackup serverBackup)
        {
            using (SqlConnection con = new SqlConnection(connectionString))
                using (SqlCommand cmd = new SqlCommand("MergeBackup", con))
                {
                    cmd.CommandType = CommandType.StoredProcedure;
                    SqlParameter id             = new SqlParameter("@BackupID", SqlDbType.Int);
                    SqlParameter name           = new SqlParameter("@Name", SqlDbType.VarChar, 25);
                    SqlParameter scheduledTime  = new SqlParameter("@ScheduledTime", SqlDbType.DateTime);
                    SqlParameter frequency      = new SqlParameter("@Frequency", SqlDbType.VarChar, 10);
                    SqlParameter backupType     = new SqlParameter("@BackupType", SqlDbType.VarChar, 25);
                    SqlParameter expirationDate = new SqlParameter("@ExpirationDate", SqlDbType.Date);
                    SqlParameter sqlBackupID    = new SqlParameter("@SQLBackupID", SqlDbType.Int);

                    id.Value             = serverBackup.BackupID;
                    name.Value           = serverBackup.Name;
                    scheduledTime.Value  = serverBackup.ScheduledTime;
                    frequency.Value      = serverBackup.Frequency;
                    backupType.Value     = serverBackup.BackupType;
                    expirationDate.Value = serverBackup.ExpirationDate;
                    sqlBackupID.Value    = serverBackup.SQLBackupID;

                    cmd.Parameters.Add(id);
                    cmd.Parameters.Add(name);
                    cmd.Parameters.Add(scheduledTime);
                    cmd.Parameters.Add(frequency);
                    cmd.Parameters.Add(backupType);
                    cmd.Parameters.Add(expirationDate);
                    cmd.Parameters.Add(sqlBackupID);

                    try
                    {
                        con.Open();
                        cmd.ExecuteNonQuery();
                    }
                    catch (Exception e)
                    {
                    }
                    finally
                    {
                        cmd.Dispose();
                        con.Close();
                    }
                }
        }
示例#7
0
        public ActionResult Edit(ServerBackup backup)
        {
            if (ModelState.IsValid)
            {
                var old = db.ServerBackups.Find(backup.SrvBkID);

                old.Location    = backup.Location;
                old.intervalMin = backup.intervalMin;

                backup.DataBaseServer = null;

                db.Entry(old).State = System.Data.Entity.EntityState.Modified;
                // db.ServerBackups.Add(backup);
                db.SaveChanges();
                return(RedirectToAction("index", new { id = backup.DbServerID }));
            }



            return(View(backup));
        }
示例#8
0
 public ActionResult DeleteConfirmed(ServerBackup serverBackup)
 {
     sprocs.DeleteServerBackup(serverBackup.BackupID);
     return(RedirectToAction("Index", new { serverId = sprocs.ReturnSQLServer(serverBackup.SQLBackupID).Server_ServerID }));
 }
示例#9
0
        private void Setup(int id, int serverId)
        {
            if (id != 0)
            {
                backup = sprocs.ReturnServerBackup(id);
            }

            list = sprocs.ReturnSQLServers(serverId);
            bool selectedSQL = false;

            SQLServer.Add(new SelectListItem()
            {
                Text = "----Select SQL Database----", Value = "----Select SQL Database----"
            });
            foreach (SQLBackupServer item in list)
            {
                if (item.SQLBackupID == backup.SQLBackupID)
                {
                    selectedSQL = true;
                }
                SQLServer.Add(new SelectListItem()
                {
                    Text = item.DatabaseName, Value = item.SQLBackupID.ToString(), Selected = selectedSQL
                });
                selectedSQL = false;
            }
            //if (id != 0)
            //{
            //    if (backup.Frequency.Equals("Daily"))
            //    {
            //        frequency.Add(new SelectListItem() { Text = "----Select Frequency----", Value = "----Select Frequency----" });
            //        frequency.Add(new SelectListItem() { Text = "Daily", Value = "Daily", Selected = true });
            //        frequency.Add(new SelectListItem() { Text = "Weekly", Value = "Weekly" });
            //        frequency.Add(new SelectListItem() { Text = "Monthly", Value = "Monthly" });
            //    }
            //    else if (backup.Frequency.Equals("Weekly"))
            //    {
            //        frequency.Add(new SelectListItem() { Text = "----Select Frequency----", Value = "----Select Frequency----" });
            //        frequency.Add(new SelectListItem() { Text = "Daily", Value = "Daily" });
            //        frequency.Add(new SelectListItem() { Text = "Weekly", Value = "Weekly", Selected = true });
            //        frequency.Add(new SelectListItem() { Text = "Monthly", Value = "Monthly" });
            //    }
            //    else if (backup.Frequency.Equals("Monthly"))
            //    {
            //        frequency.Add(new SelectListItem() { Text = "----Select Frequency----", Value = "----Select Frequency----" });
            //        frequency.Add(new SelectListItem() { Text = "Daily", Value = "Daily" });
            //        frequency.Add(new SelectListItem() { Text = "Weekly", Value = "Weekly" });
            //        frequency.Add(new SelectListItem() { Text = "Monthly", Value = "Monthly", Selected = true });
            //    }

            //    if (backup.BackupType.Equals("Full Backup"))
            //    {
            //        type.Add(new SelectListItem() { Text = "----Select Backup Type----", Value = "----Select Backup Type----" });
            //        type.Add(new SelectListItem() { Text = "Full Backup", Value = "Full Backup", Selected = true });
            //        type.Add(new SelectListItem() { Text = "Incremental Backup", Value = "Incremental Backup" });
            //    }
            //    else if (backup.BackupType.Equals("Full Backup"))
            //    {
            //        type.Add(new SelectListItem() { Text = "----Select Backup Type----", Value = "----Select Backup Type----" });
            //        type.Add(new SelectListItem() { Text = "Full Backup", Value = "Full Backup" });
            //        type.Add(new SelectListItem() { Text = "Incremental Backup", Value = "Incremental Backup", Selected = true });
            //    }
            //}
            //else
            //{
            frequency.Add(new SelectListItem()
            {
                Text = "----Select Frequency----", Value = "----Select Frequency----"
            });
            frequency.Add(new SelectListItem()
            {
                Text = "Daily", Value = "Daily"
            });
            frequency.Add(new SelectListItem()
            {
                Text = "Weekly", Value = "Weekly"
            });
            frequency.Add(new SelectListItem()
            {
                Text = "Monthly", Value = "Monthly"
            });

            type.Add(new SelectListItem()
            {
                Text = "----Select Backup Type----", Value = "----Select Backup Type----"
            });
            type.Add(new SelectListItem()
            {
                Text = "Full Backup", Value = "Full Backup"
            });
            type.Add(new SelectListItem()
            {
                Text = "Incremental Backup", Value = "Incremental Backup"
            });
            //}
        }