0

Mein Ziel ist appsettings.json Datei mit Produktionskonfigurationen und haben die Möglichkeit, es für jeden Entwickler, z. Verwenden Sie lokale Verbindungszeichenfolgen. Es ist also nicht ähnlich zu Web.config-Mechanismus zu transformieren, ich will nicht hängt von Bulid-Konfiguration. Kann jemand eine Lösung für dieses Ziel bieten?Anpassen appsetings.json für Benutzer in ASP Core 1 App

In einem meiner letzten Projekt tun wir das: wir speichern alle Konfigurationsinformationen in der benutzerdefinierten Datei config.xml und parsierten sie in die benutzerdefinierte Struktur. Web.config enthält nur Serverkonfiguration. Jeder Entwickler hat eigene Kopien von Konfigurationsdateien mit eigenen Daten. Lösung ist, dass die Anwendung Konfigurationsdateien aus dem Pfad verwendet, die im Umgebungspfad in Windows über Environment.GetEnvironmentVariable("key") angegeben sind.

Hat jemand eine bessere Idee als meine? Dies ist

Antwort

1

, wie ich Konfiguration verwalten: siehe Kommentare im Code

public Startup(IHostingEnvironment env, IApplicationEnvironment appEnv) 
{ 

    var builder = new ConfigurationBuilder() 
     .AddJsonFile("appsettings.json"); // this one has default configuration 

    // this file name is added to my gitignore so it won't get committed, 
    // I keep local dev configuration there 
    builder.AddJsonFile("appsettings.local.overrides.json", optional: true); 

    if (env.IsDevelopment()) 
    { 
     // This reads the configuration keys from the secret store. 
     // if you need a more secure place for dev configuration use usersecrets 
     // For more details on using the user secret store see http://go.microsoft.com/fwlink/?LinkID=532709 
     builder.AddUserSecrets(); 
    } 
    // the order in which config sources is added is important, a source added later 
    // will override the same settings from a source added before 
    // environment variables is usually for production and therefore added last to give it higher priority 
    builder.AddEnvironmentVariables(); 
     Configuration = builder.Build(); 


    } 
+0

Ja, das ist genau das, was ich brauche. Ich habe diese Lösung bereits mit Gitignore gefunden, vermisse aber meine eigene Frage zu beantworten. Vielen Dank. – user3272018

Verwandte Themen