Sobes.tech
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.