Ich verwende C# und .NET 8 und Microsoft.Extensions.DependencyInjection.
Ich habe eine Schnittstelle mit mehr als 30 verschiedenen Klassen, die sie implementieren. Ich möchte IEnumerable in eine andere Klasse mit einer begrenzten Lebensdauer einfügen.
Mir ist klar, dass ich jede der 30 Klassen manuell registrieren kann – etwa so:< /p>
services.AddScoped();
services.AddScoped();
...
services.AddScoped();
Gibt es eine Möglichkeit, dies dynamischer zu erreichen, ohne jede einzelne Klasse manuell registrieren zu müssen? BEARBEITEN : Ich habe eine Lösung gefunden, die zu funktionieren scheint. Kann mir jemand Feedback geben?
Type baseClass = typeof(IBaseClass);
var types = Assembly.GetAssembly(baseClass)?.
GetTypes().Where(p => !p.IsAbstract && !p.IsInterface && baseClass
.IsAssignableFrom(p));
foreach (Type t in types!)
{
services.AddScoped(typeof(IBaseClass), t);
}
Ich verwende C# und .NET 8 und Microsoft.Extensions.DependencyInjection. Ich habe eine Schnittstelle mit mehr als 30 verschiedenen Klassen, die sie implementieren. Ich möchte IEnumerable in eine andere Klasse mit einer begrenzten Lebensdauer einfügen. Mir ist klar, dass ich jede der 30 Klassen manuell registrieren kann – etwa so:< /p> services.AddScoped(); services.AddScoped(); ... services.AddScoped();
Gibt es eine Möglichkeit, dies dynamischer zu erreichen, ohne jede einzelne Klasse manuell registrieren zu müssen? [b]BEARBEITEN [/b]: Ich habe eine Lösung gefunden, die zu funktionieren scheint. Kann mir jemand Feedback geben? Type baseClass = typeof(IBaseClass); var types = Assembly.GetAssembly(baseClass)?. GetTypes().Where(p => !p.IsAbstract && !p.IsInterface && baseClass .IsAssignableFrom(p));
foreach (Type t in types!) { services.AddScoped(typeof(IBaseClass), t); }
Ich arbeite an einem Spring Boot-Projekt, in dem ich eine Notifier-Schnittstelle mit einer send(String message)-Methode habe. Verschiedene Implementierungen von Notifier, wie FCMNotifier und...
Ich habe die folgende Authentifizierungsfunktion, die eine gültige Authentifizierungs-URL (OAuth2) generiert. public func authenticate(completion: @escaping (String?) -> Void) {
let authURL =...
Ich brauche einige Anleitungen für das inkrementelle Migrationsaufbau mit Yarp -Proxy, insbesondere für die Einrichtung der Struktur in IIS. /> Virtuelle App auf Subdomain Customer1.domain.com -...