CSharp Cheat sheet

Tu guía rápida para programar en C#

Manejo de Status Code en C#

Los códigos de estado HTTP (Status Code) indican el resultado de una solicitud web. En aplicaciones ASP.NET y ASP.NET Core, puedes controlar el código de respuesta para informar al cliente de forma clara y estándar sobre el resultado de una operación. Usar correctamente los códigos de estado mejora la interoperabilidad y la experiencia del usuario.

Enviar Status Codes personalizados

En ASP.NET Core puedes devolver códigos específicos usando los helpers de controlador.

return StatusCode(404, "Recurso no encontrado.");
    

También puedes usar métodos específicos como:

return NotFound("No existe el recurso solicitado.");
return BadRequest("Datos inválidos.");
return Ok(objeto);
    

Estas respuestas indican al cliente el resultado de forma clara y con el código HTTP adecuado.

Controlar StatusCode en Middleware

En middleware puedes modificar la respuesta directamente:

app.Use(async (context, next) => {
    await next();
    if (context.Response.StatusCode == 404) {
        await context.Response.WriteAsync("Página personalizada para 404.");
    }
});
    

Esto permite personalizar mensajes o páginas de error globalmente.

Buenas Prácticas

Usa códigos HTTP estándar y semánticos para comunicar claramente el estado de la operación. Devuelve 200 (OK) solo en casos exitosos. Usa 400 (Bad Request) para errores del cliente y 500 (Internal Server Error) para fallos inesperados. Personaliza las páginas de error para una mejor experiencia de usuario. Loguea errores de servidor para análisis y monitoreo.

Ver también

Documentación oficial de Microsoft

Ver más en Microsoft Docs