我正在尝试构建自己的微服务架构,但被困在 API.Gateway 部分。我试图让Ocelot V14在.sln文件中找到所有配置ocelot.json 或 configuration.json文件。
在Program.cs文件中,我试图将配置文件与此链接中的以下代码合并https://ocelot.readthedocs.io/en/latest/features/configuration.html#react-to-configuration-changes
builder.ConfigureServices(s => s.AddSingleton(builder))
.ConfigureAppConfiguration((hostingContext, config) =>
{
config
.SetBasePath(hostingContext.HostingEnvironment.ContentRootPath)
.AddJsonFile("appsettings.json", true, true)
.AddJsonFile($"appsettings.{hostingContext.HostingEnvironment.EnvironmentName}.json", true, true)
.AddOcelot(hostingContext.HostingEnvironment)
.AddEnvironmentVariables();
})
.UseStartup<Startup>();
当我运行它时,应用程序会在我的OcelotApiGw 项目中创建以下ocelot.json文件
{
"ReRoutes": [
]
}
问题是它是空的,并且重新路由不起作用。当我将所需的重新路由粘贴到此ocelot.json文件中时,重新路由会起作用,这不是我想要的功能。
我想要的是从不同的.json文件中自动合并配置文件。
任何帮助将不胜感激。
eShopOnContainers 如何使用 Ocelot V12 以这种方式实现它
IWebHostBuilder builder = WebHost.CreateDefaultBuilder(args);
builder.ConfigureServices(s => s.AddSingleton(builder))
.ConfigureAppConfiguration(ic => ic.AddJsonFile(Path.Combine("configuration", "configuration.json")))
.UseStartup<Startup>();
如果您需要更多代码、文件结构或其他任何内容,请发表评论并询问。