private static MensajeDto ObtenerMensaje(HttpContext context, long mensajeId)
        {
            CustomPrincipal principal = context.User as CustomPrincipal;
            CustomIdentity  identity  = principal.Identity as CustomIdentity;

            IMensajeService svc     = ServiceFactory.GetMensajeService();
            MensajeDto      mensaje = null;

            if (principal.IsInRole(Roles.Administrador) || principal.IsInRole(Roles.Cliente))
            {
                mensaje = svc.ObtenerMensaje(mensajeId);
            }
            return(mensaje);
        }
        protected void Page_Load(object sender, EventArgs e)
        {
            this.HasPermissionToSeeMe(Operaciones.MensajesAlertasDetalle);
            try
            {
                IMensajeService mensajeService = ServiceFactory.GetMensajeService();

                if (!this.IsPostBack)
                {
                    if (this.BaseMaster.EsCliente)
                    {
                        this.pnlAsignacionClientes.Visible = false;
                    }

                    if (this.Request.QueryString["Id"] == null)
                    {
                        this.ClientesSeleccionados = new List <ClienteDto>();
                        mensajeCurrent             = new MensajeDto();
                        this.CargarClientes();
                    }
                    else
                    {
                        this.btnAceptar.Visible              =
                            this.btnCancelar.Visible         =
                                this.pnlBotones.Visible      =
                                    this.pnlClientes.Visible = false;
                        this.btnVolver.Visible = true;
                        mensajeCurrent         = mensajeService.ObtenerMensaje(Convert.ToInt64(this.Request.QueryString["Id"]));
                    }
                    Bindear();
                    if (this.BaseMaster.EsCliente && !mensajeCurrent.Leido)
                    {
                        this.MarcarMensajeComoLeido();
                    }
                }
            }
            catch (Exception ex)
            {
                ExceptionManager.Instance.HandleException(ex);
            }
        }