Junior — Middle
İnkişafda istifadə olunan DI konteynerlərinin nümunələrini verə bilərsinizmi?
sobes.tech Süni İntellekt
AI-dan cavab
C# dilində asılılıq injeksiyası (Dependency Injection, DI) üçün müxtəlif DI konteynerləri geniş istifadə olunur. Budur bəzi məşhur nümunələr:
- Microsoft.Extensions.DependencyInjection — .NET Core və .NET 5+ ilə daxil olan konteyner, çox tapşırıq üçün sadə və səmərəlidir.
- Autofac — güclü və çevik konteyner, inkişaf etmiş imkanlara malikdir, mürəkkəb ssenariləri dəstəkləyir.
- Ninject — rahat və asan genişləndirilə bilən konteyner, qısa sintaksis ilə.
- Unity — Microsoft Patterns & Practices-dən konteyner, çoxsaylı funksiyaları dəstəkləyir.
İçəridəki konteynerin istifadəsi nümunəsi:
var services = new ServiceCollection();
services.AddTransient<IRepository, Repository>();
var provider = services.BuildServiceProvider();
var repo = provider.GetService<IRepository>();
Bu konteynerlər obyektlərin həyat dövrünü idarə etməyə və kodun sınaqdan keçirilməsi və dəstəklənməsini asanlaşdırmağa kömək edir.