Wenn die Anzahl der Konfigurationen endlich und bekannt ist (Test, UAT, Produktionsdesktop, Produktionsmobil, usw.), können Sie das Attribut configSource in den Elementen AppSettings, ConnectionStrings und ConfigSection nutzen. Hier ist die Grundvoraussetzung; Erstellen Sie für jede Konfiguration eine AppSettings.xyz.config-Datei, wobei xyz der Name der Konfiguration ist ("local" "test", "uat", "prod" usw.). Erstellen Sie eine einzelne Datei app.config, die eine <!ENTITY config "xyz">
Definition verwendet, und hat configSource für verschiedene Abschnitte Attribute gesetzt ähnlich wie:
<appsettings configSource="appSettings.&config.config">
nun in Einsatzlogik, Sie eine Sache ändern; das String-Literal, das von der Entität definiert wird. Diese Änderung ist so einfach, dass Sie nicht einmal XML-Parsing benötigen, um die Änderung vorzunehmen. schlürfen Sie die Datei einfach mit einem FileStream in den Speicher, suchen Sie die Entity-Definition, nehmen Sie die Änderung vor und spucken Sie den neuen Inhalt wieder in die Datei. Wenn Sie ein Installationsprogramm verwenden, können Sie steuern, welche untergeordneten Konfigurationen installiert werden.
Ich denke auch darüber nach, String-Vorlage als Teil der Lösung zu verwenden. In einem Sinne, dass es umweltspezifische Werte gibt, die das Operationsteam manuell bearbeiten muss, um es zu ändern. – odez213
Ich schaute App Config xsd für das spezifische .net-Framework und ich versuche, Shell Xml dafür zu generieren. Dort forsche ich gerade. – odez213