Mercurial > altnet-hispano
changeset 82:c8897b1c6f49
Manejo de excepciones en sitio web
author | nelopauselli |
---|---|
date | Tue, 24 May 2011 19:31:10 -0300 |
parents | c76661cff260 |
children | 7e9ffde4022d |
files | Agendas/trunk/src/Agendas.Domain/Agenda.cs Agendas/trunk/src/Agendas.Web/Controllers/EventoController.cs Agendas/trunk/src/Agendas.Web/Controllers/PropuestaController.cs Agendas/trunk/src/Agendas.Web/Views/Shared/Error.cshtml Agendas/trunk/src/Agendas.Web/Web.config |
diffstat | 5 files changed, 32 insertions(+), 32 deletions(-) [+] |
line wrap: on
line diff
--- a/Agendas/trunk/src/Agendas.Domain/Agenda.cs Tue May 24 19:21:20 2011 -0300 +++ b/Agendas/trunk/src/Agendas.Domain/Agenda.cs Tue May 24 19:31:10 2011 -0300 @@ -39,9 +39,9 @@ return _eventosRepository.GetEventosConFecha() ?? new List<Evento>(); } - public Resultado ModificarEvento(Guid id, string titulo, string ponenteNombre, DateTime? fecha, string urlInvitacion) + public Resultado ModificarEvento(Guid eventoId, string titulo, string ponenteNombre, DateTime? fecha, string urlInvitacion) { - Evento evento = GetEvento(id); + Evento evento = GetEvento(eventoId); Ponente ponente = null; if (!string.IsNullOrWhiteSpace(ponenteNombre))
--- a/Agendas/trunk/src/Agendas.Web/Controllers/EventoController.cs Tue May 24 19:21:20 2011 -0300 +++ b/Agendas/trunk/src/Agendas.Web/Controllers/EventoController.cs Tue May 24 19:31:10 2011 -0300 @@ -49,22 +49,18 @@ { var agenda = AgendaFactory.GetAgenda(); var evento = agenda.GetEvento(new Guid(id)); - if (evento!=null) - { - var model = new EventoEditModel - { - Id = id, - Titulo = evento.Titulo, - Ponente = evento.Ponente != null ? evento.Ponente.Nombre : string.Empty, - Fecha = evento.Fecha - }; - return View(model); - } - ModelState.AddModelError("error","No se encontró el evento que quiere modificar"); - return View(); + + var model = new EventoEditModel + { + Id = id, + Titulo = evento.Titulo, + Ponente = evento.Ponente != null ? evento.Ponente.Nombre : string.Empty, + Fecha = evento.Fecha + }; + return View(model); } - [HttpPost] + [HttpPost] [Authorize] public ActionResult Edit(EventoEditModel model) {
--- a/Agendas/trunk/src/Agendas.Web/Controllers/PropuestaController.cs Tue May 24 19:21:20 2011 -0300 +++ b/Agendas/trunk/src/Agendas.Web/Controllers/PropuestaController.cs Tue May 24 19:31:10 2011 -0300 @@ -54,19 +54,15 @@ { var agenda = AgendaFactory.GetAgenda(); var propuesta = agenda.GetEvento(new Guid(id)); - if (propuesta != null) - { - var model = new PropuestaEditModel - { - Id = id, - Titulo = propuesta.Titulo, - Ponente = propuesta.Ponente != null ? propuesta.Ponente.Nombre : string.Empty, - UrlInvitacion = propuesta.UrlInvitacion - }; - return View(model); - } - ModelState.AddModelError("error", "No se encontró el Propuesta que quiere modificar"); - return View(); + + var model = new PropuestaEditModel + { + Id = id, + Titulo = propuesta.Titulo, + Ponente = propuesta.Ponente != null ? propuesta.Ponente.Nombre : string.Empty, + UrlInvitacion = propuesta.UrlInvitacion + }; + return View(model); } [HttpPost]
--- a/Agendas/trunk/src/Agendas.Web/Views/Shared/Error.cshtml Tue May 24 19:21:20 2011 -0300 +++ b/Agendas/trunk/src/Agendas.Web/Views/Shared/Error.cshtml Tue May 24 19:31:10 2011 -0300 @@ -1,6 +1,13 @@ @model System.Web.Mvc.HandleErrorInfo +@using AltNetHispano.Agendas.Domain.Exceptions; + <h2>Error</h2> -<h2> - Sorry, an error occurred while processing your request. -</h2> +@if (Model.Exception is EventoNotFoundException) + { + <p>No se puede encontrar el evento al que está intentado acceder</p> + } + else + { + <p>Sorry, an error occurred while processing your request.</p> + }
--- a/Agendas/trunk/src/Agendas.Web/Web.config Tue May 24 19:21:20 2011 -0300 +++ b/Agendas/trunk/src/Agendas.Web/Web.config Tue May 24 19:31:10 2011 -0300 @@ -19,6 +19,7 @@ </appSettings> <system.web> + <customErrors mode="On"/> <compilation debug="true" targetFramework="4.0"> <assemblies> <add assembly="System.Web.Abstractions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />