Verwendung von ImplementierungFaktorien mit verwandten Diensten in der Abhängigkeitsinjektion
Posted: 14 Jul 2025, 15:37
Ich habe die Dokumentation zur Abhängigkeitsinjektion gelesen, aber ich kann nicht den richtigen Ansatz für die Verwendung von ImplementierungFaktory finden, wenn der Delegate verwandte Dienste aus dem DI -Container auflösen muss, um einen anderen Dienst zu konfigurieren. (Alle Dienste implementieren idisposable )
(Ich verstehe, dass beispielsweise auch ohne Implementierung funktioniert. ImplementationFactory ?
[*] Sollte ich den lokalen Bereich in der Implementierung des Implementierung von manuell erstellen (mit CreateScope ) ? wurde nicht aufgerufen)
[*] lokale Bereich erstellen (Scope ( für transient und scoped Lebensdauer)
[*] Verwenden Sie die Verwendung von zum Aufrufen von Dispose () Methoden (Methoden ( für alle Lebensdauer aufgerufen)
Code: Select all
IHost hostBuilder = Host.CreateDefaultBuilder()
.ConfigureServices(
(context, services) =>
{
services.AddTransient();
services.AddScoped();
services.AddSingleton();
})
.ConfigureServices(
(context, services) =>
{
services.AddTransient(
sp =>
{
var transient = sp.GetRequiredService();
var scoped = sp.GetRequiredService();
var singleton = sp.GetRequiredService();
return new ServiceLifetimeReporter(transient, scoped, singleton);
});
})
.Build();
[*] Sollte ich den lokalen Bereich in der Implementierung des Implementierung von manuell erstellen (mit CreateScope ) ?
Code: Select all
Dispose()< /code>) Objekte bevor es erstellt wurde? < /li>
Was wird der richtige Ansatz in dieser (und ähnlichen) Situation sein?Dispose()
[*] lokale Bereich erstellen (Scope (
Code: Select all
Dispose()
[*] Verwenden Sie die Verwendung von zum Aufrufen von Dispose () Methoden (Methoden (
Code: Select all
Dispose()