gpt4 book ai didi

azure - 跨项目和环境共享/转换应用程序设置

转载 作者:行者123 更新时间:2023-12-03 05:44:57 24 4
gpt4 key购买 nike

我得到了一个包含多个项目(函数应用和 Web API)的 Visual Studio 解决方案以及一个在所有项目之间共享的数据层。我已经根据本文设置了解决方案,以便所有项目共享相同的配置 (appsettings.json):https://andrewlock.net/sharing-appsettings-json-configuration-files-between-projects-in-asp-net-core/

所有项目均基于.net core。

我已经为开发环境设置了构建和发布管道。但我需要一个测试和生产环境。在将共享配置发布到测试和生产环境之前如何对其进行转换?

最佳答案

你不知道。这不是 ASP.NET Core 中配置的工作方式。配置被覆盖,而不是转换。如何应用不同的配置源有一个操作顺序,这基本上就是它们的注册顺序。默认值为 JSON < 特定于环境的 JSON < 用户 secret < 环境变量 < 命令行参数。

如果您需要根据环境进行不同的配置,则将依赖于特定于环境的 JSON 文件(用于常规配置)或环境变量和/或类似 Azure Key Vault(用于 secret )的内容。由于所有这些都稍后在配置注册中进行,因此您在此处设置的任何值都将覆盖 appsettings.json 中的值。

对于特定于环境的 JSON 等内容,加载的值取决于 ASPNETCORE_ENVIRONMENT 的值,该值可以设置为环境变量或作为命令行参数传递--环境。无论哪种情况,设置的值都对应于 appsettings.{environment}.json{environment} 部分。换句话说,如果您将环境设置为 Production,则 appsettings.Production.json 将被加载到配置中(如果存在)。环境变量与环境本身相关,因此不依赖于任何特定的环境值。

关于azure - 跨项目和环境共享/转换应用程序设置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55298613/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com