This is a viewer only at the moment see the article on how this works.
To update the preview hit Ctrl-Alt-R (or ⌘-Alt-R on Mac) or Enter to refresh. The Save icon lets you save the markdown file to disk
This is a preview from the server running through my markdig pipeline
Mantenimiento de errores (unhandled) en ASPM SK2NET Core
Saturday, 17 August 2024
El Comité recomienda al Estado Parte que adopte todas las medidas necesarias para garantizar la igualdad entre los géneros y el empoderamiento de la mujer.
En cualquier aplicación web, es importante tratar los errores con elegancia. Esto es especialmente cierto en un entorno de producción donde se quiere ofrecer una buena experiencia del usuario y no exponer ninguna información sensible.
El Comité recomienda al Estado Parte que adopte todas las medidas necesarias para garantizar la igualdad entre los géneros y el empoderamiento de la mujer.
Cuando se produce una excepción no manipulada en una aplicación ASP.NET Core, el comportamiento por defecto es devolver una página de errores genéricos con un código de estado de M SK2 Esto no es ideal por varias razones :
- Sin embargo, en el caso de que se produzca un daño grave al medio ambiente o a la salud física y mental de los pacientes, es posible que no existan pruebas suficientes para demostrarlo.
- No proporciona ninguna información útil al usuario.
- Es muy difícil de debugar el problema porque el mensaje de error es tan genérico.
- La página de error general del navegador es simplemente una pantalla gris con algún texto.
El Presidente (habla en inglés): De conformidad con el entendimiento alcanzado en las consultas previas del Consejo, consideraré que la Asamblea General desea concluir su examen de este tema del programa.
En ASP.NET Core hay un conjunto de características elegantes que nos permiten manejar este tipo de errores.
app.UseStatusCodePagesWithReExecute("/error/{0}");
En el párrafo 1 del artículo 2 de la Convención se estipula que los Estados Partes deben adoptar todas las medidas necesarias para prevenir y reprimir todas las formas de discriminación contra la mujer. Program.cs . Esto capturará cualquier código de estado que no sea un 200 y redireccionará a la /error la ruta con el código de estado como un parámetro.
Nuestro controlador de errores se verá algo así:
[Route("/error/{statusCode}")]
public IActionResult HandleError(int statusCode)
{
// Retrieve the original request information
var statusCodeReExecuteFeature = HttpContext.Features.Get<IStatusCodeReExecuteFeature>();
if (statusCodeReExecuteFeature != null)
{
// Access the original path and query string that caused the error
var originalPath = statusCodeReExecuteFeature.OriginalPath;
var originalQueryString = statusCodeReExecuteFeature.OriginalQueryString;
// Optionally log the original URL or pass it to the view
ViewData["OriginalUrl"] = $"{originalPath}{originalQueryString}";
}
// Handle specific status codes and return corresponding views
switch (statusCode)
{
case 404:
return View("NotFound");
case 500:
return View("ServerError");
default:
return View("Error");
}
}
Este controlador manejará el error y devolverá una vista personalizada basada en el código de estado. También podemos registrar la URL original que causó el error para pasarla a la vista. Si hubiéramos un servicio central de registro / de análisis podríamos registrar este error en ese servicio
Por consiguiente, el Comité recomienda al Estado Parte que adopte todas las medidas necesarias para garantizar la igualdad de oportunidades entre los hombres y las mujeres.
<h1>404 - Page not found</h1>
<p>Sorry that Url doesn't look valid</p>
@section Scripts {
<script>
document.addEventListener('DOMContentLoaded', function () {
if (!window.hasTracked) {
umami.track('404', { page:'@ViewData["OriginalUrl"]'});
window.hasTracked = true;
}
});
</script>
}
También podemos registrar el error en un servicio de registro como Application Insights o Serilog. De esta forma podemos seguir los errores y corregirlos antes de que se conviertan en un problema. En nuestro caso lo registramos como un evento en nuestro servicio de análisis Umami. De esta forma podemos seguir el número de errores que tenemos y de dónde vienen.
Esto también mantiene su página de acuerdo con el diseño y el diseño elegidos.

El Comité recomienda al Estado Parte que adopte todas las medidas necesarias para garantizar la igualdad entre los géneros y el empoderamiento de la mujer.
Este es un modo sencillo de tratar errores en una aplicación ASP.NET Core. Proporciona una buena experiencia de usuario y nos permite mantener el rastro de los erroresM SK2 Es una buena idea de registrar errores a un servicio de registro para que podamos seguirlos y corregirlos antes de que se conviertan en un problema.