Avatar ·

¿Cuál es la diferencia entre AddTransient, AddScoped y AddSingleton en ASP.NET Core?

¡Hola a todos! Soy nuevo en ASP.NET Core y estoy tratando de entender la inyección de dependencias (Dependency Injection). En Startup.cs veo a menudo tres métodos: AddTransient, AddScoped y AddSingleton. Leí la documentación, pero no termino de entender cuándo usar cada uno. Por ejemplo, tengo un servicio simple para generar números aleatorios: ```csharp public interface IRandomService { int GetRandomNumber(); } public class RandomService : IRandomService { private readonly int _number; public RandomService() { _number = new Random().Next(1, 1000); Console.WriteLine($"Creada instancia de RandomService con número {_number}"); } public int GetRandomNumber() => _number; } ``` Lo registro en Startup.cs así: ```csharp services.AddTransient(); // o services.AddScoped(); // o services.AddSingleton(); ``` Cuando llamo a este se