Apenas las vi hoy... Wow
Keyed Services en .NET 8: Registrando y Resolviendo Dependencias con Claves Desde .NET 8, el contenedor de Inyección de Dependencias (DI) de Microsoft incorpora una característica muy esperada por la comunidad: los Keyed Services (servicios con clave). Esta funcionalidad permite registrar múltiples implementaciones de la misma interfaz y resolverlas usando una clave específica, sin recurrir a trucos como fábricas manuales o el patrón Strategy implementado a mano. En este post vamos a ver qué son, qué problema resuelven, cómo se registran y resuelven, y un ejemplo práctico de uso real. ¿Qué problema resuelven? Antes de .NET 8, si tenías varias implementaciones de una misma interfaz (por ejemplo, distintos proveedores de notificaciones: Email, SMS, Push), el contenedor de DI solo te devolvía la última registrada al pedir IServiceProvider.GetService<INotificador>() . Para elegir una implementación específica, la mayoría de los desarrolladores recurríamos a: Registr...