Asp.net core's appsttings is totally different than the web.config. One is json file another is xml file.
Besides, according to this github issue, you could find Asp.net core program team also don't want to implement this thing.
Here is a workaround, this workaround is not merg, just replace the appsetting.json according to the replace one.
So for all the appsetting.env.json, you need to put all the settings inside it.
You could modify the csporj file by adding below codes:
<ItemGroup><Content Update="appsettings*json" CopyToPublishDirectory="Never" /><FileToRename Include="$(ProjectDir)appsettings.Release.json" /></ItemGroup><Target Name="RenameAppSettingsProd" AfterTargets="Publish"><Message Text="Inside AfterPublish" Importance="high" /><Copy SourceFiles="@(FileToRename)" DestinationFiles="$(PublishDir)appsettings.json" OverwriteReadOnlyFiles="true" /></Target>
Then it just generate one appsettings.json file according to publish environment.
Like below:
I put a specific settings inside the appsetting.release.json.
{"Logging": {"LogLevel": {"Default": "Information","Microsoft.AspNetCore": "Warning" } },"AllowedHosts": "*","settings": "release"}
Result: