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

问题描述

在 .NET Framework 中,我们有在创建项目时创建的 app.config 文件。但在 .NET Core 中,在创建控制台应用程序时没有应用程序配置文件。对于 .NET Core 应用程序,推荐的配置文件是什么。

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

标签: .net.net-core.net-standard.net-standard-2.0

解决方案


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

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

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

在 ASP.NET Core 应用程序中,通常使用 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 包。)

此后,您可以通过配置对象的类字典接口访问配置数据。

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

您可以在MSDN 文档中找到所有详细信息。


推荐阅读