Junior — Middle
Կարող եք տալ DI կոնտեյներների օրինակներ, որոնք կիրառվում են զարգացման մեջ?
sobes.tech AI
Պատասխան AI-ից
C# լեզվում լայնորեն օգտագործվում են տարբեր Dependency Injection (DI) կոնտեյներներ: Ահա մի քանի հանրահայտ օրինակներ:
- Microsoft.Extensions.DependencyInjection — ներքին կոնտեյներ .NET Core և .NET 5+-ում, պարզ և արդյունավետ մեծ մասի առաջադրանքների համար:
- Autofac — հզոր և ճկուն կոնտեյներ, ունի առաջադեմ հնարավորություններ, աջակցում է բարդ սցենարներին:
- Ninject — հարմարավետ և հեշտ ընդլայնվող կոնտեյներ, կարճ սինտաքսով:
- Unity — Microsoft Patterns & Practices-ի կոնտեյներ, աջակցում է բազմաթիվ ֆունկցիաների:
Օրինակ՝ ներքին կոնտեյների օգտագործման:
var services = new ServiceCollection();
services.AddTransient<IRepository, Repository>();
var provider = services.BuildServiceProvider();
var repo = provider.GetService<IRepository>();
Այս կոնտեյներները օգնում են կառավարել օբյեկտների կյանքի ցիկլը և հեշտացնում են կոդի թեստավորումը և սպասարկումը։