Skip to content

Apq.Cfg高性能 .NET 配置组件库

支持多种配置源、动态重载、依赖注入集成

Apq.Cfg

快速安装

bash
# 安装核心包
dotnet add package Apq.Cfg

# 安装 YAML 支持
dotnet add package Apq.Cfg.Yaml

# 安装 Consul 支持
dotnet add package Apq.Cfg.Consul
xml
<PackageReference Include="Apq.Cfg" Version="1.1.*" />
<PackageReference Include="Apq.Cfg.Yaml" Version="1.1.*" />
<PackageReference Include="Apq.Cfg.Consul" Version="1.1.*" />

简单示例

csharp
using Apq.Cfg;

// 创建配置
var cfg = new CfgBuilder()
    .AddJsonFile("config.json")
    .AddYamlFile("config.yaml", optional: true)
    .AddEnvironmentVariables()
    .Build();

// 读取配置
var connectionString = cfg["Database:ConnectionString"];
var timeout = cfg.GetValue<int>("Database:Timeout");

// 绑定到强类型对象
var dbConfig = cfg.GetSection("Database").GetValue<DatabaseConfig>();

支持的配置源

类型配置源NuGet 包
本地JSONApq.Cfg (内置)
本地YAMLApq.Cfg.Yaml
本地XMLApq.Cfg.Xml
本地INIApq.Cfg.Ini
本地TOMLApq.Cfg.Toml
本地.env 文件Apq.Cfg.Env
本地环境变量Apq.Cfg (内置)
数据存储RedisApq.Cfg.Redis
数据存储DatabaseApq.Cfg.Database
配置中心ConsulApq.Cfg.Consul
配置中心ApolloApq.Cfg.Apollo
配置中心NacosApq.Cfg.Nacos
配置中心VaultApq.Cfg.Vault
配置中心EtcdApq.Cfg.Etcd
配置中心ZookeeperApq.Cfg.Zookeeper

扩展功能

功能说明NuGet 包
加密脱敏AES-GCM/AES-CBC/ChaCha20/SM4/3DES 加密,敏感字段脱敏Apq.Cfg.Crypto
Data ProtectionASP.NET Core Data Protection 集成Apq.Cfg.Crypto.DataProtection
加密工具命令行加密工具 (dotnet tool)Apq.Cfg.Crypto.Tool
源生成器编译时生成零反射绑定代码,支持 Native AOTApq.Cfg.SourceGenerator
Web APIRESTful API 接口,支持远程配置管理Apq.Cfg.WebApi
Web 管理界面集中管理多个应用的配置Apq.Cfg.WebUI

基于 MIT 许可发布