Validierung der appsettings

Um die Korrektheit der appsettings der Applikation zu gewährleisten stellen wir ein JSON Schema zur Verfügung. Dies muss als Datei in das Projekt integriert und von den appsettings Dateien referenziert werden.

Lokale Kopie

Das Schema ist teil des Framework Codes appsettings.schema.json: https://dev.azure.com/encodo/Quino/_git/Quino-Web?path=/appsettings.schema.json

Entsprechend der verwendeten Framework Version muss hier die passende Version aus den Repository kopiert werden. Hier können wir direkt unterstützen und die konkrete Version zur Verfügung stellen.

Schema Referenzieren

Referenz auf die Datei mit dem Schlüssel "$schema" einfügen. Der Dateipfad kann absolut oder relativ sein.

{ "$schema": "../../../../appsettings.schema.json", "Serilog": { ... }

Schema mit Projektspezifischen Konfigurationen erweitern

Um das Schema mit Projektspezifischen Konfigurationen zu erweitern kann ein neues Schema erstellt werden welches alle Regeln vom Quino Schema auch verwendet. Dies kann mit "allOf": [{"$ref": "./appsettings.schema.json"}], eingebunden werden.

{ "$schema": "https://json-schema.org/draft/2020-12/schema", ... "allOf": [{"$ref": "./appsettings.schema.json"}], "type": "object", "properties": { "DMSd3": { ... } } }