是的,C# 的 IServiceProvider 接口支持依赖注入。IServiceProvider 是 .NET Core 和 .NET Framework 中用于实现依赖注入的核心接口之一。它允许你在应用程序中注册和解析依赖项。
要使用 IServiceProvider 进行依赖注入,你需要遵循以下步骤:
ServiceCollection 类来注册服务并创建服务提供者实例。var serviceCollection = new ServiceCollection(); AddTransient、AddScoped 或 AddSingleton 方法来注册不同类型的服务。serviceCollection.AddTransient<IMyService, MyServiceImpl>(); serviceCollection.AddScoped<IRepository, RepositoryImpl>(); serviceCollection.AddSingleton<IConfiguration, ConfigurationImpl>(); IServiceProvider 实例的 GetService 方法来解析依赖项。var serviceProvider = serviceCollection.BuildServiceProvider(); var myService = serviceProvider.GetService<IMyService>(); var repository = serviceProvider.GetService<IRepository>(); var configuration = serviceProvider.GetService<IConfiguration>(); 通过这种方式,你可以在应用程序中使用 IServiceProvider 接口来实现依赖注入,从而提高代码的可测试性和可维护性。