public ActionResult ElegirToken(System.Guid id) { Pedido pedido = _pedidoServicio.ObtenerPedidoByToken(id); if (pedido == null) { TempData["mensaje"] = "Identificacion invalida"; return(RedirectToAction("Error", "Home")); } else if (pedido.IdEstadoPedido == 2) { TempData["mensaje"] = "No se puede elegir los gustos por que el pedido ya fue cerrado"; return(RedirectToAction("Error", "Home")); } if (ClsSesion.GetUsuarioLogueado() == null) { return(RedirectToAction("Login", "Home", new { redirigir = "/Pedidos/ElegirToken/" + id })); } usuarioLogueado = ClsSesion.GetUsuarioLogueado(); //Guid token = Guid.Parse(tokn); if (!(usuarioLogueado.IdUsuario == pedido.InvitacionPedido.Where(i => i.Token == id).Select(u => u.IdUsuario).FirstOrDefault())) { TempData["mensaje"] = "Acceso invalido"; return(RedirectToAction("Error", "Home")); } if (!_pedidoServicio.InvitacionPedidoUsuarioIsTrue(pedido.IdPedido, usuarioLogueado)) { TempData["mensaje"] = "Acceso invalido"; return(RedirectToAction("Error", "Home")); } ViewBag.IdUsuario = usuarioLogueado.IdUsuario; ViewBag.TokenInvitacion = pedido.InvitacionPedido.Where(i => i.IdPedido == pedido.IdPedido && i.IdUsuario == usuarioLogueado.IdUsuario).FirstOrDefault().Token.ToString(); return(View("Elegir", pedido)); }