ich einen Abschnitt in appsettings.json habe, die eine Liste von Bibliotheken und die Abhängigkeiten enthalten, und wie sie in verschiedener Ausführung konfigurieren environments.I'd möchte in der Lage sein zu überprüfen, dass die Bibliothek Sammlung umfasst alle Abhängigkeiten.Validieren Konfiguration in MVC-Core
, das einfach genug ist, mit einem wenig Rekursion zu tun. Aber ich kann nicht herausfinden, wie ich den Konfigurationsbindungsprozess übersteuern kann, damit ich die Validierung durchführen kann.
Die einzige Möglichkeit, die ich gefunden habe, ist eine rohe Sammlung der Bibliotheken basierend auf appconfig.json zu erstellen und dann einen Dienst zu erstellen, der die Sammlung validiert und verfügbar macht. Etwas wie:
public class RawLibraries : List<Library>
{
}
public class LibraryResolver
{
public LibraryResolver(IOptions<RawLibraries> rawLibs, ILogger logger)
{
// validate rawLibs and log errors
}
// ...implementation
}
services.Configure<RawLibraries>(Configuration.GetSection("Libraries"));
services.AddSingleton<LibraryResolver, LibraryResolver>();
Aber das scheint gewunden. Gedanken zu einem besseren Ansatz?
Mein schlechtes! Ich gewöhne mich immer noch daran, unter die Haube schauen zu können, wie all das Zeug zusammengefügt ist. Danke, David! –