Class CfgBuilderTemplateExtensions
CfgBuilder 模板扩展方法
public static class CfgBuilderTemplateExtensions
- Inheritance
-
CfgBuilderTemplateExtensions
- Inherited Members
Methods
AddVariableResolver(CfgBuilder, IVariableResolver)
添加自定义变量解析器
public static CfgBuilder AddVariableResolver(this CfgBuilder builder, IVariableResolver resolver)
Parameters
builderCfgBuilder配置构建器
resolverIVariableResolver变量解析器
Returns
- CfgBuilder
配置构建器实例,支持链式调用
Examples
var cfg = new CfgBuilder()
.AddJsonFile("config.json", level: 0)
.AddVariableResolver(new CustomResolver())
.Build();
ConfigureVariableResolution(CfgBuilder, Action<VariableResolutionOptions>)
启用变量解析功能
public static CfgBuilder ConfigureVariableResolution(this CfgBuilder builder, Action<VariableResolutionOptions> configure)
Parameters
builderCfgBuilder配置构建器
configureAction<VariableResolutionOptions>配置选项委托
Returns
- CfgBuilder
配置构建器实例,支持链式调用
Examples
var cfg = new CfgBuilder()
.AddJsonFile("config.json", level: 0)
.ConfigureVariableResolution(options =>
{
options.MaxRecursionDepth = 5;
options.UnresolvedBehavior = UnresolvedVariableBehavior.Throw;
})
.Build();
// 使用解析后的值
var logPath = cfg.GetResolved("App:LogPath");
Remarks
启用后,可以使用 GetResolved() 方法获取解析变量后的配置值。 此方法主要用于配置自定义解析选项,如果使用默认选项,可以直接调用 GetResolved()。