跳到主要内容

TenantSettingHelper

TenantSettingHelper 提供读取系统和租户级别配置的能力,可以在 C# 脚本或微服务中获取平台配置参数来驱动业务逻辑。

API 方法​

GetSystemDefaultValue — 获取系统默认值​

根据配置键获取系统级别的默认值。

string GetSystemDefaultValue(string key);

示例:

// 获取系统级默认配置
var maxUploadSize = sdk.TenantSettingHelper.GetSystemDefaultValue("MaxUploadFileSize");
var defaultLanguage = sdk.TenantSettingHelper.GetSystemDefaultValue("DefaultLanguage");

GetTenantConfig — 获取租户完整配置​

获取当前租户的完整配置对象(IConfiguration 类型),支持通过冒号分隔符访问嵌套节点。

IConfiguration GetTenantConfig();

示例:

// 获取完整配置对象
var config = sdk.TenantSettingHelper.GetTenantConfig();

// 访问嵌套配置项
var connectionString = config["ConnectionStrings:Default"];
var appId = config["AppSettings:AppId"];
var featureFlag = config["FeatureFlags:NewDashboard"];

典型场景​

根据配置控制业务流程​

public async Task<object> ExecuteAsync(ComponentContext context, ChameleonSDK sdk)
{
var config = sdk.TenantSettingHelper.GetTenantConfig();

// 根据租户配置决定是否自动审批
var enableAutoApproval = config["WorkflowSettings:EnableAutoApproval"];
if (enableAutoApproval == "true")
{
// 走自动审批逻辑...
}

// 读取外部服务地址用于接口调用
var apiHost = config["ExternalServices:ApiHost"];
// ...

return new { success = true };
}

读取系统默认值作为回退​

// 优先使用业务配置,没有则取系统默认值
var timeout = context.GetFieldValue("Timeout")
?? sdk.TenantSettingHelper.GetSystemDefaultValue("DefaultRequestTimeout");

相关文档​