是的,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
接口來實現依賴注入,從而提高代碼的可測試性和可維護性。