Junior — Middle
Spiega il concetto di Dependency Injection in ASP.NET Core e come viene applicato nello sviluppo di applicazioni.
sobes.tech AI
Risposta dell'AI
L'iniezione di dipendenza (DI) in ASP.NET Core è un meccanismo che consente di iniettare dipendenze (ad esempio, servizi, repository) nelle classi senza doverle creare manualmente. Questo aumenta la modularità, la testabilità e semplifica la gestione delle dipendenze.
In ASP.NET Core, DI è integrato nel framework e viene configurato nel metodo ConfigureServices della classe Startup o in Program.cs.
Esempio di registrazione e utilizzo di un servizio:
// Interfaccia del servizio
public interface IMessageService {
string GetMessage();
}
// Implementazione del servizio
public class MessageService : IMessageService {
public string GetMessage() => "Ciao da DI!";
}
// Registrazione in ConfigureServices
public void ConfigureServices(IServiceCollection services) {
services.AddTransient<IMessageService, MessageService>();
}
// Utilizzo tramite il costruttore
public class HomeController : Controller {
private readonly IMessageService _messageService;
public HomeController(IMessageService messageService) {
_messageService = messageService;
}
public IActionResult Index() {
var message = _messageService.GetMessage();
return Content(message);
}
}
In questo modo, ASP.NET Core creerà automaticamente un'istanza di MessageService e la passerà al controller, evitando di dover creare manualmente gli oggetti.