# Dependency Injection (.NET) > Service-Lifetimes (singleton, scoped, transient), Service-Registrierung, IServiceProvider, Best Practices - 24 Interview-Fragen - Mid-Level - [Interview-Fragen: .NET](https://sharpskill.dev/de/technologies/dotnet/interviewfragen.md) ## 1. Was ist der Hauptunterschied zwischen den Lifetimes Singleton, Scoped und Transient? **Antwort** Singleton erstellt eine einzige Instanz für die gesamte Anwendungslebensdauer, Scoped erstellt eine Instanz pro HTTP-Anfrage (oder Scope), und Transient erstellt bei jeder Injektion eine neue Instanz. Diese Lifetimes bestimmen, wann und wie oft der DI-Container einen Service instanziiert. Verwende Singleton für zustandslose gemeinsam genutzte Services, Scoped für anfragegebundene Services (wie DbContext) und Transient für leichtgewichtige zustandslose Services. ## 2. Welches Lifetime sollte zum Registrieren eines Entity Framework Core DbContext verwendet werden? **Antwort** Ein DbContext sollte mit Scoped Lifetime registriert werden, da er nicht thread-safe ist und einen Tracking-Zustand der Entitäten beibehält. Jede HTTP-Anfrage sollte ihre eigene DbContext-Instanz haben, um Parallelitätsprobleme zu vermeiden. Die Registrierung erfolgt mit AddDbContext, das automatisch das Scoped Lifetime konfiguriert. Singleton würde Parallelitätsfehler verursachen, und Transient würde Ressourcen verschwenden, indem zu viele Instanzen erstellt werden. ## 3. Wie registriert man einen Service mit einem interface und seiner Implementierung? **Antwort** Die Registrierung eines Service erfolgt mit den Methoden AddSingleton, AddScoped oder AddTransient, indem das interface als Servicetyp und die konkrete Klasse als Implementierung angegeben wird. Die Syntax lautet services.Add{Lifetime}(). Dieser Ansatz wahrt das Dependency-Inversion-Prinzip und erleichtert das Testen, indem das Austauschen von Implementierungen ermöglicht wird. Der DI-Container löst die konkrete Implementierung beim Injizieren des interface automatisch auf. ## 21 weitere Fragen verfügbar - Wann sollte AddSingleton gegenüber AddScoped bevorzugt werden? - Welche Rolle spielt IServiceProvider im DI-System? Kostenlos registrieren: https://sharpskill.dev/de/login ## Weitere .NET-Interviewthemen - [C#-Grundlagen](https://sharpskill.dev/de/technologies/dotnet/interviewfragen/csharp-basics.md): 25 Fragen, Junior - [LINQ & Delegates](https://sharpskill.dev/de/technologies/dotnet/interviewfragen/csharp-linq-delegates.md): 20 Fragen, Junior - [C#-Sprachgrundlagen](https://sharpskill.dev/de/technologies/dotnet/interviewfragen/csharp-language-essentials.md): 15 Fragen, Junior - [ASP.NET Core Grundlagen](https://sharpskill.dev/de/technologies/dotnet/interviewfragen/aspnet-core-fundamentals.md): 18 Fragen, Junior - [ASP.NET Core Request-Lebenszyklus](https://sharpskill.dev/de/technologies/dotnet/interviewfragen/aspnet-core-request-lifecycle.md): 20 Fragen, Junior - [Configuration & Settings](https://sharpskill.dev/de/technologies/dotnet/interviewfragen/configuration-settings.md): 20 Fragen, Junior - [Anwendungslebenszyklus](https://sharpskill.dev/de/technologies/dotnet/interviewfragen/application-lifecycle.md): 20 Fragen, Junior - [Entity Framework Core](https://sharpskill.dev/de/technologies/dotnet/interviewfragen/entity-framework-core.md): 25 Fragen, Mid-Level - [Minimal APIs](https://sharpskill.dev/de/technologies/dotnet/interviewfragen/minimal-apis.md): 18 Fragen, Mid-Level - [Web-API-Entwicklung](https://sharpskill.dev/de/technologies/dotnet/interviewfragen/web-api-development.md): 22 Fragen, Mid-Level - [Async in ASP.NET Core](https://sharpskill.dev/de/technologies/dotnet/interviewfragen/async-aspnet-core.md): 20 Fragen, Mid-Level - [Authentication & Authorization](https://sharpskill.dev/de/technologies/dotnet/interviewfragen/authentication-authorization.md): 18 Fragen, Mid-Level - [HttpClient & Networking](https://sharpskill.dev/de/technologies/dotnet/interviewfragen/httpclient-networking.md): 20 Fragen, Mid-Level - [JSON-Serialisierung](https://sharpskill.dev/de/technologies/dotnet/interviewfragen/json-serialization.md): 20 Fragen, Mid-Level - [Entity Framework Core fortgeschritten](https://sharpskill.dev/de/technologies/dotnet/interviewfragen/ef-core-advanced.md): 25 Fragen, Mid-Level - [Erweiterte C#-Funktionen](https://sharpskill.dev/de/technologies/dotnet/interviewfragen/csharp-advanced-features.md): 20 Fragen, Mid-Level - [Clean Architecture](https://sharpskill.dev/de/technologies/dotnet/interviewfragen/clean-architecture.md): 20 Fragen, Mid-Level - [Logging, Monitoring & Observability](https://sharpskill.dev/de/technologies/dotnet/interviewfragen/logging-monitoring.md): 22 Fragen, Mid-Level - [Unit-Tests & xUnit](https://sharpskill.dev/de/technologies/dotnet/interviewfragen/unit-testing-xunit.md): 20 Fragen, Mid-Level - [Integrationstests](https://sharpskill.dev/de/technologies/dotnet/interviewfragen/integration-testing.md): 18 Fragen, Mid-Level - [Docker & Containerization](https://sharpskill.dev/de/technologies/dotnet/interviewfragen/docker-containerization.md): 16 Fragen, Mid-Level - [NuGet Package Management](https://sharpskill.dev/de/technologies/dotnet/interviewfragen/nuget-package-management.md): 16 Fragen, Mid-Level - [Memory Management & GC](https://sharpskill.dev/de/technologies/dotnet/interviewfragen/memory-management-gc.md): 22 Fragen, Senior - [Reaktive Programmierung](https://sharpskill.dev/de/technologies/dotnet/interviewfragen/reactive-programming.md): 24 Fragen, Senior - [Async/await & Patterns](https://sharpskill.dev/de/technologies/dotnet/interviewfragen/async-await-patterns.md): 26 Fragen, Senior - [.NET Design Patterns](https://sharpskill.dev/de/technologies/dotnet/interviewfragen/dotnet-design-patterns.md): 24 Fragen, Senior - [Performance-Optimierung](https://sharpskill.dev/de/technologies/dotnet/interviewfragen/performance-optimization.md): 22 Fragen, Senior - [Sicherheit & Best Practices](https://sharpskill.dev/de/technologies/dotnet/interviewfragen/security-best-practices.md): 24 Fragen, Senior - [SignalR & Echtzeit](https://sharpskill.dev/de/technologies/dotnet/interviewfragen/signalr-realtime.md): 22 Fragen, Senior - [Microservices-Architektur](https://sharpskill.dev/de/technologies/dotnet/interviewfragen/microservices-architecture.md): 25 Fragen, Senior --- Source: SharpSkill (https://sharpskill.dev), tech interview preparation for your real stack. HTML version of this page: https://sharpskill.dev/de/technologies/dotnet/interviewfragen/dependency-injection