0

Моя цель состоит в том, чтобы иметь файл appsettings.json с конфигурациями производства и иметь возможность стоить его для каждого разработчика, например. используйте локальные строки подключения. Таким образом, он не похож на преобразование механизма web.config, я не хочу, зависит от конфигурации пули. Может ли кто-нибудь предоставить решение для этой цели?Настроить appsetings.json для пользователя в ASP Core 1 приложение

В одном из моих прошлых проектов мы делаем так: мы сохраняем всю информацию о конфигурации в пользовательском файле config.xml и разбираем ее в пользовательской структуре. Web.config содержит только конфигурацию сервера. каждый разработчик имеет собственную копию конфигурационных файлов с собственными данными. Решение состоит в том, что приложение использует конфигурационные файлы из пути, указанного в пути среды в окнах, через Environment.GetEnvironmentVariable("key").

У кого-нибудь есть идея лучше, чем моя?

ответ

1

Это, как я управляю конфигурации: см комментарии в коде

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

Да, это именно то, что мне нужно. Я уже нашел это решение с gitignore, но не могу ответить на собственный вопрос. Спасибо. – user3272018