public ActionResult Actualizar(InstanciaView InstanciaView) { try { string id = Request.Form["txtId"]; string nombreInstancia = Request.Form["txtNombreInstancia"]; int servidorId = int.Parse(Request.Form["cboServidor"]); int ambienteId = int.Parse(Request.Form["cboAmbiente"]); int instanciaAnterior = int.Parse(Request.Form["cboInstanciaAnt"]); string repositorioSubversion = Request.Form["txtRepoSubversion"]; Instancia p = new Instancia(); p.Id = int.Parse(id); p.Nombre = nombreInstancia; p.Servidor = new Servidor() { Id = servidorId }; p.Ambiente = new Ambiente() { Id = ambienteId }; p.InstanciaAnterior = instanciaAnterior == 0 ? null : new InstanciaRepository().Obtener(instanciaAnterior); p.RepositorioSubversion = repositorioSubversion; // Esquemas p.Esquemas = new List <Esquema>(); List <string> nombres = Request.Form.AllKeys.ToList().Where(param => param.Contains("nombreesquema")).ToList(); foreach (string nombre in nombres) { string indice = nombre.Substring("nombreesquema".Length); string nombreEsquema = Request.Form["nombreesquema" + indice]; if (!String.IsNullOrEmpty(Request.Form["idesquema" + indice]) || Request.Form["eliminadoesquema" + indice] == "0") { p.Esquemas.Add(new Esquema { Id = String.IsNullOrEmpty(Request.Form["idesquema" + indice]) ? 0 : Convert.ToInt32(Request.Form["idesquema" + indice]), Nombre = nombreEsquema, Eliminar = Request.Form["eliminadoesquema" + indice] == "1" }); } } InstanciaRepository pr = new InstanciaRepository(); p = pr.Actualizar(p); if (p.Id == 0) { InstanciaView.Mensaje = "Hubo un error al crear el Instancia"; return(View("Crear", InstanciaView)); } InstanciaView pp = new InstanciaView(); pp.Mensaje = "Instancia Actualizada"; pp.Instancia = p; pp.Instancias = new InstanciaRepository().Listar("", 0, 0); pp.Servidores = new ServidorRepository().Listar("", "", 0); pp.Servidores.Insert(0, new Servidor() { Id = 0, Nombre = "" }); pp.Ambientes = new AmbienteRepository().Listar(""); pp.Ambientes.Insert(0, new Ambiente() { Id = 0, Nombre = "" }); return(View("Obtener", pp)); } catch (Exception ex) { return(View("Mensaje", new InstanciaView { Mensaje = ex.Message })); } }
public ActionResult Crear(InstanciaView InstanciaView) { try { string nombreInstancia = Request.Form["txtNombreInstancia"]; int servidorId = int.Parse(Request.Form["cboServidor"]); int ambienteId = int.Parse(Request.Form["cboAmbiente"]); int instanciaAnterior = int.Parse(Request.Form["cboInstanciaAnt"]); string repositorioSubversion = Request.Form["txtRepoSubversion"]; #region Verificar is ya existe el código del Instancia InstanciaRepository pr = new InstanciaRepository(); Instancia p = pr.Obtener(nombreInstancia.Trim()); if (p != null) { InstanciaView.Instancia.Nombre = nombreInstancia; InstanciaView.Instancia.Servidor = new ServidorRepository().Obtener(servidorId); InstanciaView.Instancia.Ambiente = new AmbienteRepository().Obtener(ambienteId); InstanciaView.Mensaje = "El nombre del Instancia ya existe"; return(View("Crear", InstanciaView)); } else { p = new Instancia(); p.Nombre = nombreInstancia; p.Ambiente = new Ambiente() { Id = ambienteId }; p.Servidor = new Servidor() { Id = servidorId }; p.InstanciaAnterior = instanciaAnterior == 0 ? null : new InstanciaRepository().Obtener(instanciaAnterior); p.RepositorioSubversion = repositorioSubversion; p = pr.Actualizar(p); if (p.Id == 0) { InstanciaView.Mensaje = "Hubo un error al crear el Instancia"; return(View("Crear", InstanciaView)); } } #endregion InstanciaView pp = new InstanciaView(); pp.Servidores = new ServidorRepository().Listar("", "", 0); pp.Servidores.Insert(0, new Servidor() { Id = 0, Nombre = "" }); pp.Ambientes = new AmbienteRepository().Listar(""); pp.Ambientes.Insert(0, new Ambiente() { Id = 0, Nombre = "" }); pp.Mensaje = "Instancia Creada"; return(View("Crear", pp)); } catch (Exception ex) { return(View("Mensaje", new InstanciaView { Mensaje = ex.Message })); } }