为什么我的环境变量没有覆盖appsettings.json

问题描述 投票:0回答:1

我有一个使用 ASP.NET Core Web API 和 mongodb 的应用程序,它们都是由 docker-compose 容器化的,我不知道为什么我的 appsettings 没有被覆盖。

This is my appsettings.json

This is my service in the docker-compose.override

我期望(并且在老师的工作中)这个连接字符串被覆盖,但实际上并非如此。

我不知道这是否相关,但我的 ASP.NET Core 是版本 7,他的是 5

我的连接字符串没有被覆盖

docker asp.net-core docker-compose connection-string
1个回答
0
投票

来自文档:

: 分隔符不适用于分层环境变量 所有平台上的密钥。例如,不支持 : 分隔符 由巴什。所有系统都支持双下划线 (__) 平台,自动替换环境中的任何 : 分隔符 变量。

(来源https://learn.microsoft.com/en-us/dotnet/core/extensions/configuration-providers#environment-variable-configuration-provider

所以你应该将其更改为类似的

"DatabaseSettings__ConnectionString=mongodb://catalogdb:27017"
© www.soinside.com 2019 - 2024. All rights reserved.