none
Como obtener el método que lanza una excepción desde UseExceptionHandler en .Net Core RRS feed

  • Question

  • Hola

    Tengo unos proyectos del tipo WebApi con .Net Core. En ninguno de mis proyectos capturo excepciones dentro de mis métodos, si no que lo hago como dice este enlace desde app.UseExceptionHandler.

    https://docs.microsoft.com/en-us/aspnet/core/fundamentals/error-handling?view=aspnetcore-3.1

    Necesito poder desde allí identificar el método que lanzo la excepción, como podría obtenerlo?

    Quiero es poder dar mensajes mas personalizados por método. Para ello he creado una clase del tipo Atributo y en ella agrego el mensaje que quiero obtener desde el maneja de la excepción:

    [MetodoInfo("Error desde el método obtener entidades")]
            public async Task ObtenerEntidades()
            {
                //Contenido del método
            }

    Necesito obtener el método desde aca, para que por medio de algun reflection, leer el valor del atributo:

    app.UseExceptionHandler(options =>
                {
                    options.Run(
                           async context =>
                           {
                               GlobalException global = new GlobalException(context);
                               await global.Handler();
                           });
                });

    Nota: context es un objeto del tipo Microsoft.AspNetCore.Http.DefaultHttpContext.

    Saludos!

    Thursday, January 16, 2020 6:36 PM

All replies

  • hola

    >>Necesito poder desde allí identificar el método que lanzo la excepción, como podría obtenerlo?

    la unica forma de hacer eso es parserando el StackTrace o sino simplemente lo logueas y luego analizas el texto

    >>Quiero es poder dar mensajes mas personalizados por método.

    no, eso no se hace

    si quieres algo personalizado entonces captura con try..catch el problema en el metodo donde se origian y lanza una exception nueva con el mensaje que quieras enviar

    hacerlo de forma global magicamente no se puede

    saludos


    Leandro Tuttini

    Blog
    MVP Profile
    Buenos Aires
    Argentina

    Thursday, January 16, 2020 8:07 PM