ConfigurationBuilder 类

定义

用于生成用于应用程序中的基于键/值的配置设置。

public ref class ConfigurationBuilder : Microsoft::Extensions::Configuration::IConfigurationBuilder
public class ConfigurationBuilder : Microsoft.Extensions.Configuration.IConfigurationBuilder
type ConfigurationBuilder = class
    interface IConfigurationBuilder
Public Class ConfigurationBuilder
Implements IConfigurationBuilder
继承
ConfigurationBuilder
实现

注解

通过使用此类,可以将配置值存储在 JSON 文件中,例如,然后在运行时检索它们。 有关详细信息,请参阅 配置 - 基本示例

如果要将应用迁移到 .NET Core 3.1 或更高版本,则可以使用此类替换以前用于配置应用的 app.config 文件功能。

以下代码片段显示了一个简化的应用,该应用创建一个 ConfigurationBuilder 对象,用于在运行时从 JSON 文件中检索字符串值。

using Microsoft.Extensions.Configuration;

IConfigurationBuilder builder = new ConfigurationBuilder().AddJsonFile("appsettings.json", false, true);
IConfigurationRoot root = builder.Build();

Console.WriteLine($"Hello, { root["weather"] } world!");

/* This program outputs the following text:
 * 
 * Hello, stormy world!
 */

JSON 文件的内容如下所示。

{
  "weather": "stormy"
}

构造函数

ConfigurationBuilder()

初始化 ConfigurationBuilder 类的新实例。

属性

Properties

获取一个键/值集合,该集合可用于在 IConfigurationBuilder 和已注册的配置提供程序之间共享数据。

Sources

获取用于获取配置值的源。

方法

Add(IConfigurationSource)

添加新的配置源。

Build()

使用 Sources中注册的提供程序集中的键和值生成一个 IConfiguration

Equals(Object)

确定指定的对象是否等于当前对象。

(继承自 Object)
GetHashCode()

用作默认哈希函数。

(继承自 Object)
GetType()

获取当前实例的 Type

(继承自 Object)
MemberwiseClone()

创建当前 Object的浅表副本。

(继承自 Object)
ToString()

返回一个表示当前对象的字符串。

(继承自 Object)

扩展方法

AddApplicationMetadata(IConfigurationBuilder, IHostEnvironment, String)

注册应用程序元数据的配置提供程序。

AddConfiguration(IConfigurationBuilder, IConfiguration)

将现有配置添加到 configurationBuilder

AddConfiguration(IConfigurationBuilder, IConfiguration, Boolean)

将现有配置添加到 configurationBuilder

AddCommandLine(IConfigurationBuilder, Action<CommandLineConfigurationSource>)

添加从命令行读取配置值的 IConfigurationProvider

AddCommandLine(IConfigurationBuilder, String[])

添加从命令行读取配置值的 CommandLineConfigurationProvider

AddCommandLine(IConfigurationBuilder, String[], IDictionary<String,String>)

添加一个 CommandLineConfigurationProvider,该 CommandLineConfigurationProvider 使用指定的交换机映射从命令行读取配置值。

Add<TSource>(IConfigurationBuilder, Action<TSource>)

添加新的配置源。

AddEnvironmentVariables(IConfigurationBuilder)

添加从环境变量读取配置值的 IConfigurationProvider

AddEnvironmentVariables(IConfigurationBuilder, Action<EnvironmentVariablesConfigurationSource>)

添加从环境变量读取配置值的 IConfigurationProvider

AddEnvironmentVariables(IConfigurationBuilder, String)

添加一个从具有指定前缀的环境变量读取配置值的 IConfigurationProvider

GetFileLoadExceptionHandler(IConfigurationBuilder)

获取要用于基于文件的提供程序的默认 IFileProvider

GetFileProvider(IConfigurationBuilder)

获取要用于基于文件的提供程序的默认 IFileProvider

SetBasePath(IConfigurationBuilder, String)

使用基本路径将基于文件的提供程序的 FileProvider 设置为 PhysicalFileProvider。

SetFileLoadExceptionHandler(IConfigurationBuilder, Action<FileLoadExceptionContext>)

设置在发生错误时要为基于文件的提供程序调用的默认操作。

SetFileProvider(IConfigurationBuilder, IFileProvider)

设置要用于基于文件的提供程序的默认 IFileProvider

AddIniFile(IConfigurationBuilder, IFileProvider, String, Boolean, Boolean)

将 INI 配置源添加到 builder

AddIniFile(IConfigurationBuilder, Action<IniConfigurationSource>)

将 INI 配置源添加到 builder

AddIniFile(IConfigurationBuilder, String)

path 处的 INI 配置提供程序添加到 builder

AddIniFile(IConfigurationBuilder, String, Boolean)

path 处的 INI 配置提供程序添加到 builder

AddIniFile(IConfigurationBuilder, String, Boolean, Boolean)

path 处的 INI 配置提供程序添加到 builder

AddIniStream(IConfigurationBuilder, Stream)

将 INI 配置源添加到 builder

AddJsonFile(IConfigurationBuilder, IFileProvider, String, Boolean, Boolean)

将 JSON 配置源添加到 builder

AddJsonFile(IConfigurationBuilder, Action<JsonConfigurationSource>)

将 JSON 配置源添加到 builder

AddJsonFile(IConfigurationBuilder, String)

path 的 JSON 配置提供程序添加到 builder

AddJsonFile(IConfigurationBuilder, String, Boolean)

path 的 JSON 配置提供程序添加到 builder

AddJsonFile(IConfigurationBuilder, String, Boolean, Boolean)

path 的 JSON 配置提供程序添加到 builder

AddJsonStream(IConfigurationBuilder, Stream)

将 JSON 配置源添加到 builder

AddKeyPerFile(IConfigurationBuilder, Action<KeyPerFileConfigurationSource>)

使用目录中的文件添加配置。 文件名用作键,文件内容用作值。

AddKeyPerFile(IConfigurationBuilder, String)

使用目录中的文件添加配置。 文件名用作键,文件内容用作值。

AddKeyPerFile(IConfigurationBuilder, String, Boolean)

使用目录中的文件添加配置。 文件名用作键,文件内容用作值。

AddKeyPerFile(IConfigurationBuilder, String, Boolean, Boolean)

使用目录中的文件添加配置。 文件名用作键,文件内容用作值。

AddInMemoryCollection(IConfigurationBuilder)

将内存配置提供程序添加到 configurationBuilder

AddInMemoryCollection(IConfigurationBuilder, IEnumerable<KeyValuePair<String,String>>)

将内存配置提供程序添加到 configurationBuilder

AddUserSecrets(IConfigurationBuilder, Assembly)

添加用户机密配置源。 这会搜索 assemblyUserSecretsIdAttribute实例,该实例指定用户机密 ID。

用户机密 ID 是用于存储和标识机密配置值的集合的唯一值。

AddUserSecrets(IConfigurationBuilder, Assembly, Boolean)

添加用户机密配置源。 这会搜索 assemblyUserSecretsIdAttribute实例,该实例指定用户机密 ID。

用户机密 ID 是用于存储和标识机密配置值的集合的唯一值。

AddUserSecrets(IConfigurationBuilder, Assembly, Boolean, Boolean)

添加用户机密配置源。 这会搜索 assemblyUserSecretsIdAttribute实例,该实例指定用户机密 ID。

用户机密 ID 是用于存储和标识机密配置值的集合的唯一值。

AddUserSecrets(IConfigurationBuilder, String)

添加具有指定用户机密 ID 的用户机密配置源。

用户机密 ID 是用于存储和标识机密配置值的集合的唯一值。

AddUserSecrets(IConfigurationBuilder, String, Boolean)

添加具有指定用户机密 ID 的用户机密配置源。

用户机密 ID 是用于存储和标识机密配置值的集合的唯一值。

AddUserSecrets<T>(IConfigurationBuilder)

添加用户机密配置源。 在包含类型 T 的程序集中搜索 UserSecretsIdAttribute实例,该实例指定用户机密 ID。

用户机密 ID 是用于存储和标识机密配置值的集合的唯一值。

AddUserSecrets<T>(IConfigurationBuilder, Boolean)

添加用户机密配置源。 在包含类型 T 的程序集中搜索 UserSecretsIdAttribute实例,该实例指定用户机密 ID。

用户机密 ID 是用于存储和标识机密配置值的集合的唯一值。

AddUserSecrets<T>(IConfigurationBuilder, Boolean, Boolean)

添加用户机密配置源。 在包含类型 T 的程序集中搜索 UserSecretsIdAttribute实例,该实例指定用户机密 ID。

用户机密 ID 是用于存储和标识机密配置值的集合的唯一值。

AddXmlFile(IConfigurationBuilder, IFileProvider, String, Boolean, Boolean)

将 XML 配置源添加到 builder

AddXmlFile(IConfigurationBuilder, Action<XmlConfigurationSource>)

将 XML 配置源添加到 builder

AddXmlFile(IConfigurationBuilder, String)

path 的 XML 配置提供程序添加到 builder

AddXmlFile(IConfigurationBuilder, String, Boolean)

path 的 XML 配置提供程序添加到 builder

AddXmlFile(IConfigurationBuilder, String, Boolean, Boolean)

path 的 XML 配置提供程序添加到 builder

AddXmlStream(IConfigurationBuilder, Stream)

将 XML 配置源添加到 builder

适用于

另请参阅

  • .NET 中的 配置