跳到主要内容

SDK

SDK 是平台为开发者提供的核心开发工具包,通过 ChameleonSDK 类统一暴露平台能力。在 C# 脚本(平台接口组件中的 C# 脚本组件)或微服务开发中,可以通过 ChameleonSDK 参数访问所有平台功能。

概述​

ChameleonSDK 是 SDK 的入口类,它聚合了以下核心能力模块:

模块属性名说明
工具方法HelperURL 解析、时区转换等通用工具方法
数据访问DbContext平台封装的数据库操作接口
日志记录Logger日志记录器
Open APIOpenApiHelper调用平台 Open API 接口
租户配置TenantSettingHelper读取租户/系统配置
消息通知NotificationHelper发送通知、管理待办事项
账户管理AccountHelper身份、角色管理等账户操作
人员信息UserInformationHelper批量添加/编辑人员信息
审批流WorkflowHelper发起审批、审批操作等
HTTP 客户端HttpClientFactoryHTTP 客户端工厂,用于任意 HTTP 调用
异步任务TinyTaskHelper异步任务进度跟踪
缓存CacheHelper缓存读写操作(内存/Redis)
服务调用ServiceCallHelper微服务间调用

快速开始​

在 C# 脚本中使用​

在平台接口的 C# 脚本组件中,ChameleonSDK 会作为参数自动注入:

using Chameleon.SDK;

public class MyScript
{
public async Task<object> ExecuteAsync(ComponentContext context, ChameleonSDK sdk)
{
// 记录日志
sdk.Logger.LogInformation("脚本开始执行");

// 读取租户配置
var config = sdk.TenantSettingHelper.GetTenantConfig();
var settingValue = config["MySection:MyKey"];

// 调用 Open API
var result = await sdk.OpenApiHelper.PostAsync(
"api/OpenApi/Hello",
new { message = "test" }
);

return result;
}
}

在微服务中使用​

在微服务中,通过依赖注入获取 ChameleonSDK:

public class MyService
{
private readonly ChameleonSDK _sdk;

public MyService(ChameleonSDK sdk)
{
_sdk = sdk;
}

public async Task DoSomething()
{
// 使用 SDK 的各项能力
var token = _sdk.OpenApiHelper.GetSystemUserToken();
// ...
}
}

模块导航​

数据访问(DbContext)子目录​

数据访问能力已按主题拆分为多篇文档,从 DbContext 总览进入:

下一步​