Ale*_*sev 3 .net c# .net-core asp.net-core asp.net-core-3.0
为开发和生产环境配置 .net core 应用程序时,使用什么更好:环境变量或构建配置?即我可以appsettings.*environment*.json通过这两种方式绑定
构建配置是 .NET Framework 时代的遗留物。虽然您可以在 .NET Core 应用程序中使用它们,但它们的实用性是有限的。唯一的用途是指令,您可以执行以下操作:
#if DEBUG
// stuff
#endif
Run Code Online (Sandbox Code Playgroud)
然而,首先这是一种值得怀疑的做法。
对于 .NET Core,范例是为所有环境发布一次。环境的概念应该独立于代码本身。这可以确保您的代码在从开发/测试到登台/QA,最后到生产时实际正常工作,因为代码就是代码。
除此之外,由于您专门询问配置,因此基于构建的配置在 .NET Core 中不起作用。没有 app.config/web.config,即使有专门用于支持 IIS 中托管的 web.config,它实际上也不会以任何方式被 .NET Core 使用 - 只是 IIS。
因此,这个问题毫无意义。对于 .NET Core 中的配置,您可以使用Microsoft.Extensions.Configuration,它本身依赖于环境的概念也是基于配置的,而不是基于构建的。实际上,您不必使用环境变量。环境也可以通过命令行传递。重点是它设置的是运行时,而不是编译时。
| 归档时间: |
|
| 查看次数: |
1698 次 |
| 最近记录: |