.NET配置文件大揭秘:轻松读取JSON、XML、INI和环境变量

这篇具有很好参考价值的文章主要介绍了.NET配置文件大揭秘:轻松读取JSON、XML、INI和环境变量。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

.NET配置文件大揭秘:轻松读取JSON、XML、INI和环境变量

 

概述:.NET中的IConfiguration接口提供了一种多源读取配置信息的灵活机制,包括JSON、XML、INI文件和环境变量。通过示例,清晰演示了从这些不同源中读取配置的方法,使配置获取变得方便且易于扩展。这种方式适用于不同场景,如API密钥、数据库连接等,为应用提供了高度可配置性。

在.NET中,IConfiguration接口提供了一种灵活的方式来管理和读取应用程序配置信息。这可以包括来自不同源的配置信息,如JSON、XML、INI文件以及环境变量。

读取JSON文件:

JSON文件通常用于保存结构化的配置信息,例如Web应用的设置、API密钥等。

JSON文件内容如下:

{
  "AppSettings": {
    "ApiKey": "your_api_key",
    "LogLevel": "Info"
  },
  "DatabaseSettings": {
    "ConnectionString": "your_connection_string",
    "TimeoutSeconds": 30
  }
}

实例描述:

using Microsoft.Extensions.Configuration;
using System;

public class JsonConfigReader
{
    public static IConfigurationRoot ReadJsonFile(string filePath)
    {
        try
        {
            // 创建ConfigurationBuilder
            var builder = new ConfigurationBuilder();

            // 添加Json文件作为配置源
            builder.AddJsonFile(filePath);

            // 构建IConfigurationRoot
            IConfigurationRoot config = builder.Build();

            return config;
        }
        catch (Exception ex)
        {
            Console.WriteLine($"读取JSON文件失败: {ex.Message}");
            return null;
        }
    }
}

使用示例:

public class Program
{
    public static void Main()
    {
        // 指定JSON文件路径
        string jsonFilePath = "appsettings.json";

        // 读取JSON文件内容
        IConfigurationRoot config = JsonConfigReader.ReadJsonFile(jsonFilePath);

        if (config != null)
        {
            // 获取配置项
            string apiKey = config["AppSettings:ApiKey"];
            string connectionStr = config["DatabaseSettings:ConnectionString"];

            Console.WriteLine($"API Key: {apiKey}, Database Connection: {connectionStr}");
        }
    }
}

读取XML文件:

XML文件常用于保存包含大量元数据的配置信息,例如Windows应用程序配置。

XML文件内容如下:

<configuration>
  <AppSettings>
    <ApiKey>your_api_key</ApiKey>
    <LogLevel>Info</LogLevel>
  </AppSettings>
  <DatabaseSettings>
    <ConnectionString>your_connection_string</ConnectionString>
    <TimeoutSeconds>30</TimeoutSeconds>
  </DatabaseSettings>
</configuration>

实例描述:

using Microsoft.Extensions.Configuration;
using System;

public class XmlConfigReader
{
    public static IConfigurationRoot ReadXmlFile(string filePath)
    {
        try
        {
            // 创建ConfigurationBuilder
            var builder = new ConfigurationBuilder();

            // 添加Xml文件作为配置源
            builder.AddXmlFile(filePath);

            // 构建IConfigurationRoot
            IConfigurationRoot config = builder.Build();

            return config;
        }
        catch (Exception ex)
        {
            Console.WriteLine($"读取XML文件失败: {ex.Message}");
            return null;
        }
    }
}

使用示例:

public class Program
{
    public static void Main()
    {
        // 指定XML文件路径
        string xmlFilePath = "appsettings.xml";

        // 读取XML文件内容
        IConfigurationRoot config = XmlConfigReader.ReadXmlFile(xmlFilePath);

        if (config != null)
        {
            // 获取配置项
            string apiKey = config["AppSettings:ApiKey"];
            string connectionStr = config["DatabaseSettings:ConnectionString"];

            Console.WriteLine($"API Key: {apiKey}, Database Connection: {connectionStr}");
        }
    }
}

读取INI文件:

INI文件是一种简单的配置文件格式,通常用于保存简单的键值对配置。

INI文件内容如下:

[AppSettings]
ApiKey=your_api_key
LogLevel=Info

[DatabaseSettings]
ConnectionString=your_connection_string
TimeoutSeconds=30

实例描述:

using Microsoft.Extensions.Configuration;
using System;

public class IniConfigReader
{
    public static IConfigurationRoot ReadIniFile(string filePath)
    {
        try
        {
            // 创建ConfigurationBuilder
            var builder = new ConfigurationBuilder();

            // 添加Ini文件作为配置源
            builder.AddIniFile(filePath);

            // 构建IConfigurationRoot
            IConfigurationRoot config = builder.Build();

            return config;
        }
        catch (Exception ex)
        {
            Console.WriteLine($"读取INI文件失败: {ex.Message}");
            return null;
        }
    }
}

使用示例:

public class Program
{
    public static void Main()
    {
        // 指定INI文件路径
        string iniFilePath = "appsettings.ini";

        // 读取INI文件内容
        IConfigurationRoot config = IniConfigReader.ReadIniFile(iniFilePath);

        if (config != null)
        {
            // 获取配置项
            string apiKey = config["AppSettings:ApiKey"];
            string connectionStr =

 config["DatabaseSettings:ConnectionString"];

            Console.WriteLine($"API Key: {apiKey}, Database Connection: {connectionStr}");
        }
    }
}

读取环境变量:

环境变量通常用于存储敏感信息,如API密钥或数据库连接字符串。

实例描述:

using Microsoft.Extensions.Configuration;
using System;

public class EnvConfigReader
{
    public static IConfigurationRoot ReadEnvironmentVariables()
    {
        try
        {
            // 创建ConfigurationBuilder
            var builder = new ConfigurationBuilder();

            // 添加环境变量作为配置源
            builder.AddEnvironmentVariables();

            // 构建IConfigurationRoot
            IConfigurationRoot config = builder.Build();

            return config;
        }
        catch (Exception ex)
        {
            Console.WriteLine($"读取环境变量失败: {ex.Message}");
            return null;
        }
    }
}

使用示例:

public class Program
{
    public static void Main()
    {
        // 读取环境变量内容
        IConfigurationRoot config = EnvConfigReader.ReadEnvironmentVariables();

        if (config != null)
        {
            // 获取配置项
            string apiKey = config["AppSettings:ApiKey"];
            string connectionStr = config["DatabaseSettings:ConnectionString"];

            Console.WriteLine($"API Key: {apiKey}, Database Connection: {connectionStr}");
        }
    }
}

以上代码提供了使用IConfiguration读取JSON、XML、INI文件以及环境变量的通用方法,使得配置信息的获取更加灵活和便捷。

 

.NET配置文件大揭秘:轻松读取JSON、XML、INI和环境变量文章来源地址https://www.toymoban.com/news/detail-829117.html

到了这里,关于.NET配置文件大揭秘:轻松读取JSON、XML、INI和环境变量的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Qt读写ini配置文件(QSettings)、XML

    1、ini相关的 总结:Qt读写ini配置文件(QSettings) - 布丁Plus - 博客园 (cnblogs.com) Qt读写ini文件(含源码+注释)_qt ini文件读写_lw向北.的博客-CSDN博客 2、XML相关的 Qt读写XML文件(含源码+注释)_qt写xml_lw向北.的博客-CSDN博客

    2024年02月11日
    浏览(39)
  • .NET6读取appsettings.json配置

    基于 .NET 6.0 创建的 WebAPI 项目,自动生成的 appsettings.json 配置模板,在当前项目(dll)中可以通过构造函数注入 Configuration 来读取。 那么不在当前项目中怎么读取配置呢?例如下面这样的项目, appsesttings.json 在 Xuanjun.Blog.Server.API 中,但是想在 Xuanjun.Blog.Server.Core 读取配置,怎么

    2024年02月10日
    浏览(36)
  • NetCore读取JSON配置文件

    一、添加NuGet 包: 1. Microsoft.Extensions.Configuration.Binder :将对象与 Microsoft.Extensions.Configuration 的配置提供程序中的数据绑定的功能。 2. Microsoft.Extensions.Configuration.Json :Microsoft.Extensions.Configuration 的 JSON 配置提供程序实现。 3. Microsoft.Extensions.Configuration.EnvironmentVariables :Microso

    2024年02月05日
    浏览(26)
  • python读取ini文件

    python+pytest做接口测试时,通常需要把环境的配置信息(如不同环境的IP,数据库的连接信息等)保存在ini文件中,方便切换和维护。 这里来记录一下ini文件的读取方法。 #ini文件的读取依赖的包为 configparser。 这样config就会返回整个ini文件的内容。 [host] ;api_sit_url = https://api

    2024年02月12日
    浏览(37)
  • C# 读取ini文件示例

    一般使用一个相关win32 api的封装类;我用的如下; C#, 运行; ini文件; [mymoney1] moneyname=jintiao moneycount=9999  

    2024年01月18日
    浏览(28)
  • Quartz.NET配置文件:简便任务调度,轻松管理

      概述: Quartz.NET是一个强大的任务调度库,支持通过配置文件灵活配置任务和触发器。配置文件中定义了调度器、线程池、作业和触发器的相关信息。默认情况下,Quartz.NET在应用程序根目录查找名为 quartz.config 的配置文件。若配置文件位于其他路径或具有不同名称,可以通

    2024年03月09日
    浏览(37)
  • android studio 添加并读取json配置文件

    第一步:在android  studio中添加json文件;   第二步:读取文件的函数

    2024年02月16日
    浏览(33)
  • .Net Core 读取配置文件

    目录 appsetting.json IConfiguration 读取 IConfiguration Bind 读取 IOptionsMonitor 读取 Program.cs 构造注入 使用 IOptions 读取 Program.cs 构造注入 使用 用于测试appsetting.json 直接构造函数注入 使用Bind方法与对象绑定,然后操作对象即可, 注意: 对象属性与配置文件节点相同 Program.cs 读取要读取的节

    2024年02月17日
    浏览(37)
  • .net core .net6 读取数据库 读取配置文件 保姆级教程

    本文环境 Microsoft Visual Studio 2022 .Net6 SQLServer2019 在解决方案管理器右键添加相关的包,如下两个包 Microsoft.Data.SqlClient SQLServer SQLServer数据库 Microsoft.Extensions.Configuration.Json json配置文件 添加配置文件 appsettings.json,选始终复制 添加json配置文件内容如下 DefaultConnection 根据自己的

    2024年02月08日
    浏览(39)
  • 使用自定义XML配置文件在.NET桌面程序中保存设置

    本文将详细介绍如何在.NET桌面程序中使用自定义的XML配置文件来保存和读取设置。除了XML之外,我们还将探讨其他常见的配置文件格式,如JSON、INI和YAML,以及它们的优缺点和相关的NuGet类库。最后,我们将重点介绍我们为何选择XML作为配置文件格式,并展示一个实用的示例

    2024年02月09日
    浏览(34)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包