使用 netstandard2.0 读取应用程序配置详细信息的推荐方法是什么

What is the recommended approach on reading application configuration details using netstandard2.0

在 .NET Framework 中,我们有 app.config 当项目为 created.But 时创建的文件,在 .NET Core 中没有应用程序配置文件,当控制台应用程序为 created.What 时.NET Core 应用程序的推荐配置文件。

如果 .NET Core/.NET Framework 应用程序引用了 netstandard 库,如果 netstandard 库已从配置文件中读取配置详细信息,则必须使用 类。我认为 .NET Core 支持多个配置文件

在 .NET Core 中,配置设置可以来自不同的来源:

  • 文件格式(INI、JSON 和 XML)。
  • 命令行参数。
  • 环境变量。
  • 内存中 .NET 对象。
  • 未加密的 Secret Manager 存储。
  • 加密的用户存储,例如 Azure Key Vault。
  • 自定义提供程序(安装或创建)。

如您所见,您有很多选择,甚至可以同时使用多个选项。选择您喜欢的任何来源或最适合您场景的来源。

在ASP.NET核心应用程序中通常使用JSON文件。 (但是,默认情况下也会从命令行和环境变量中获取设置)。 JSON 配置文件的命名约定是 appsettings.json(但如果需要,您可以使用其他名称)。所以我们可以说,appsettings.json 大致等同于 .NET Core 中的 App.config

下面的代码示例显示了如何从 JSON 文件中读取设置:

var builder = new ConfigurationBuilder()
    .SetBasePath(Directory.GetCurrentDirectory())
    .AddJsonFile("appsettings.json");

var configuration = builder.Build();

(要编译它,您需要安装 Microsoft.Extensions.Configuration.Json NuGet 包。)

此后,您可以通过 configuration 对象的类似字典的界面访问配置数据。

但是,还有更方便的方式来使用配置数据。 ASP.NET Core 中广泛使用的推荐方法是选项 API.

您可以在 the MSDN docs 中找到所有详细信息。