Hola, Tuttini.
Lo resolví de otra forma, el problema es que la partial view la mando a mostrar desde una llamada AJAX y claro, la otra view que quiero mostrar me la seguía mostrando como una partial y no como una vista normal (que uso siempre para mostrar errores), entonces
hice en mi controlador:
[HttpGet]
public ActionResult Crear(int id)
{
Licencia.Estado = licenciaLogica.ValidarExistencia(id);
string mensaje = Licencia.MensajeDeEstado();
if (!string.IsNullOrEmpty(mensaje))
{
var url = this.Url.Action("Mostrar", "Error", new { @mensaje = mensaje });
return Json(new { estatus = "error", redirectUrl = url }, JsonRequestBehavior.AllowGet);
}
var idEmpresa = distribucionLogica.ObtenerIdEmpresa(id);
var licenciaModelo = new LicenciaModelo();
licenciaModelo.IdDistribucion = id;
licenciaModelo.ListaDepartamento = departamentoLogica.ObtenerTodos(idEmpresa);
return PartialView("Crear", licenciaModelo);
}
Y en la llamada AJAX:
success: function (data) {
debugger;
if (data.estatus == "error") {
window.location.href = data.redirectUrl;
} else {
$('#ContenidoModal').html(data);
$('#VistaModal').modal(options);
$('#VistaModal').modal('show');
}
}
De esa forma, al mostrar un mensaje de error, voy a otra página y ya no lo muestro en la partial view.
Saludos,
Carlos Márquez
San Pedro Sula
Honduras