Dependency Injection (DI) está integrado en .NET moderno — el framework incluye un contenedor de DI que construye automáticamente clases e inyecta sus dependencias. Registras servicios (mapeando interfaces a implementaciones) y el contenedor los resuelve, permitiendo código débilmente acoplado y comprobable. Es fundamental para ASP.NET Core.
Registrando servicios
builder.Services.AddScoped<IUserRepository, UserRepository>();
builder.Services.AddSingleton<ICacheService, CacheService>();
builder.Services.AddTransient<IEmailSender, EmailSender>();
