Ich habe zwei Konfigurationsdateien:Wie wird eine Konfigurationsquelle in einen bestimmten Konfigurationsabschnitt platziert, um Schlüsselkonflikte zu vermeiden?
users.json
:
{
"Alice" : { "Email": "[email protected]" },
"Bob" : { "Email": "[email protected]" }
}
und connections.json
{
"Database" : { "ConnectionString": "..." },
"Gateway" : { "Url": "http://..." }
}
Und ich versuche, eine einzelne Konfiguration Wurzel zu komponieren:
var cfg = new ConfigurationBuilder()
.AddJsonFile("users.json")
.AddJsonFile("connections.json")
.Build();
Offensichtlich Ich muss p schnappen Sie jede Konfigurationsquelle in den Abschnitt: Users
und Connections
- um Konflikte zu vermeiden. Eine Art Prefixing Wrapper kann die Aufgabe erledigen, aber ich möchte nicht meine eigenen implementieren.
Wie würden Sie mit dieser Situation umgehen, wenn Sie die Struktur der Konfigurationsdatei nicht ändern können (im realen Projekt gibt es dafür einen Grund)?
Das ist leicht zu argumentieren gegen Konfiguration DE- Normalisierung im Allgemeinen, aber in meinem Fall ist es einfach keine Option, diese Dateien zu ändern – astef