Ejemplo n.º 1
0
 public static void ManejarExcepcion(Exception ex)
 {
     try
     {
         Boolean relanzar = ExceptionPolicy.HandleException(ex, "Politica Global");
         if (relanzar)
         {
             ManejoExcepciones.ShowException(ex.Message, "Aviso", "AVISO");
         }
     }
     catch
     {
         //string msgError = "Ha ocurrido un error inesperado mientras se llamaba " +
         //                  "al controlador de errores. ";
         string msgError = "Es posible que el controlador de execpciones no se encuentre instalado";
         msgError += Environment.NewLine;
         ManejoExcepciones.ShowException(msgError + Environment.NewLine + ex.Message, "Aviso", "AVISO");
     }
 }
Ejemplo n.º 2
0
        public static void CrearProxyAuxiliar(string usuario, string password, ref ISvcAuxdSWin servicio, string servidor)
        {
            var host = Properties.Settings.Default.HostAuxiliar;

            try
            {
                _factoryAuxiliar = new ChannelFactory <ISvcAuxdSWin>(host);
                Ayudas.SetDataContractSerializerBehavior(_factoryAuxiliar.Endpoint.Contract);
                if (_factoryAuxiliar.Credentials != null)
                {
                    _factoryAuxiliar.Credentials.UserName.UserName = usuario;
                    _factoryAuxiliar.Credentials.UserName.Password = password;
                }
                if (servidor == null)
                {
                    servicio = _factoryAuxiliar.CreateChannel();
                }
                else
                {
                    var abs = _factoryAuxiliar.Endpoint.Address.Uri.AbsolutePath;
                    EndpointIdentity spn = EndpointIdentity.CreateSpnIdentity("Prueba");
                    var strUri           = string.Format("http://{0}{1}", servidor, abs);
                    Uri uri     = new Uri(strUri);
                    var address = new EndpointAddress(uri, spn);
                    servicio = _factoryAuxiliar.CreateChannel(address);
                }
                //servicio = _factoryAuxiliar.CreateChannel();
            }
            catch (CommunicationException e)
            {
                Abort((IChannel)servicio, _factoryAuxiliar);

                // if there is a fault then print it out
                FaultException fe  = null;
                Exception      tmp = e;
                while (tmp != null)
                {
                    fe = tmp as FaultException;
                    if (fe != null)
                    {
                        break;
                    }
                    tmp = tmp.InnerException;
                }
                if (fe != null)
                {
                    string msgError = string.Format("Ha ocurrido un error en el Servidor {0} ",
                                                    fe.CreateMessageFault().Reason.GetMatchingTranslation().Text);
                    msgError += Environment.NewLine;
                    ManejoExcepciones.ShowException(msgError, "Error de Aplicación", "Error de Aplicación");
                }
                else
                {
                    string msgError = string.Format("Solicitud erronea {0} ", e);
                    msgError += Environment.NewLine;
                    ManejoExcepciones.ShowException(msgError, "Error de Aplicación", "Error de Aplicación");
                }
            }
            catch (TimeoutException)
            {
                Abort((IChannel)servicio, _factoryAuxiliar);
                string msgError = "Se ha excedido el tiempo de espera";
                msgError += Environment.NewLine;
                ManejoExcepciones.ShowException(msgError, "Error de Aplicación", "Error de Aplicación");
            }
            catch (Exception e)
            {
                Abort((IChannel)servicio, _factoryAuxiliar);
                string msgError = string.Format("Error inesperado en la solicitud {0} ", e);
                msgError += Environment.NewLine;
                ManejoExcepciones.ShowException(msgError, "Error de Aplicación", "Error de Aplicación");
            }
        }