Не уверен, что это то, что вы ищете? Так Ocelot объединяет несколько файлов маршрутизации
https://ocelot.readthedocs.io/en/latest/features/configuration.html#merging -configuration-files
Мы не используем это, но так мы определили наш запуск :
var builder = new ConfigurationBuilder()
.SetBasePath(env.ContentRootPath)
.AddJsonFile("appsettings.json", optional: true, reloadOnChange: true)
.AddJsonFile($"appsettings.{env.EnvironmentName}.json", optional: true)
.AddJsonFile(this.env.IsDevelopment() ? "ocelot.json" : "ocelot.octopus.json")
.AddEnvironmentVariables();
Итак, у нас есть наши стандартные appSettings плюс Ocelot, который мы используем, чтобы Octopus преобразовывал различные переменные, которые мы хотим, когда наш экземпляр Ocelot развертывается в наших тестовых / производственных средах (или только наших тестовых / локальных). one).
Похоже, это бит, который определяет, что делать с несколькими файлами:
В этом сценарии Ocelot будет искать любые файлы, которые соответствуют шаблону (? i) ocelot. ([a-zA-Z0-9] *). json и затем объедините их вместе. Если вы хотите установить свойство GlobalConfiguration, у вас должен быть файл с именем ocelot.global. json.
Не уверен, нужно ли вам явно определять каждый файл (если они не могут быть определены через переменную как {env.EnvironmentName}), но это должно быть достаточно просто для тестирования.
Извините, если я получил неправильный конец флешки, но надеюсь, что это поможет.