Sobes.tech
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>();

Αυτά τα δοχεία βοηθούν στη διαχείριση του κύκλου ζωής των αντικειμένων και διευκολύνουν τις δοκιμές και τη συντήρηση του κώδικα.