.NetCore如何获取Json和Xml格式的配置信息讲解

1. 简介

在 .NET Core 中,我们可以使用配置文件来存储应用程序或组件的配置选项。配置文件可以配置应用程序、环境和不同部署场景下的不同配置,比如数据库连接字符串、日志级别、缓存配置等等。

配置系统支持多种配置格式,包括 JSON、XML、INIs 和命令行参数等等,本文我们重点讲解 Json 和 Xml 格式的配置信息。

2. Json 格式

2.1 添加 NuGet 包

在项目中使用 Json 格式的配置文件时,需要先添加如下 NuGet 包:

Microsoft.Extensions.Configuration.Json

2.2 配置文件

在项目根目录下创建一个 appsettings.json 文件(如果已有则不需要重复创建),示例如下:

{

"AppSettings": {

"ConnectionStrings": {

"DefaultConnection": "Server=(localdb)\\MSSQLLocalDB;Database=MyDatabase;Trusted_Connection=True"

},

"Logging": {

"LogLevel": {

"Default": "Warning"

}

}

}

}

其中,ConnectionStrings 是用来存储数据库连接字符串的配置信息,Logging 是用来配置日志等级的。

2.3 使用配置文件

Startup.cs 文件中,使用以下代码来读取配置文件:

public Startup(IConfiguration configuration)

{

Configuration = configuration;

}

public IConfiguration Configuration { get; }

然后就可以通过如下代码来读取配置信息:

var connectionString = Configuration.GetConnectionString("DefaultConnection");

var logLevel = Configuration["AppSettings:Logging:LogLevel:Default"];

其中,GetConnectionString 方法可以读取数据库连接字符串,[] 运算符可以读取任意层级的配置信息。

3. Xml 格式

3.1 添加 NuGet 包

在项目中使用 Xml 格式的配置文件时,需要先添加如下 NuGet 包:

Microsoft.Extensions.Configuration.Xml

3.2 配置文件

在项目根目录下创建一个 appsettings.xml 文件(如果已有则不需要重复创建),示例如下:

Server=(localdb)\MSSQLLocalDB;Database=MyDatabase;Trusted_Connection=True

Warning

其中,ConnectionStrings 是用来存储数据库连接字符串的配置信息,Logging 是用来配置日志等级的。

3.3 使用配置文件

Startup.cs 文件中,使用以下代码来读取配置文件:

public Startup(IConfiguration configuration)

{

Configuration = configuration;

}

public IConfiguration Configuration { get; }

然后就可以通过如下代码来读取配置信息:

var connectionString = Configuration.GetConnectionString("DefaultConnection");

var logLevel = Configuration["AppSettings:Logging:LogLevel:Default"];

其中,GetConnectionString 方法可以读取数据库连接字符串,[] 运算符可以读取任意层级的配置信息。

4. 总结

在 .NET Core 中,我们可以使用配置文件来存储应用程序或组件的配置选项。配置系统支持多种配置格式,包括 JSON、XML、INIs 和命令行参数等等。本文重点讲解了 Json 和 Xml 格式的配置信息。

后端开发标签