跳到主内容
微创应用WC · WORKSPACE CLOUD
登录创建工作空间
DEVELOPER STANDARDS

插件规范

遵循当前包结构、SDK 能力与版本审核流程,交付可管理的应用。

插件包结构

使用 .plugin 扩展名的 ZIP 包,根目录包含 manifest.json 与清单声明的程序集。资源放在 assets/,迁移文件放在 migrations/。上传后由服务端核对包内容,提交审核后不能用替换文件修改已审核的版本。

application.plugin
├── manifest.json
├── Wc.DemoPlugin.dll
├── assets/
└── migrations/
    └── 001-notes.sql

版本清单

清单声明 schemaVersion、应用 code/name、version、minCoreVersion、assembly/entryType、kind、逻辑表、迁移、路由、菜单与 capabilities。当前示例使用 1.0.0 核心版本,路径与菜单引用应一致。

示例用于了解结构,实际上传内容仍需通过服务端清单和包校验。

SDK 与数据访问

程序集实现 Wc.PluginSdk.IPlugin。框架使用独立 AssemblyLoadContext 管理插件程序集生命周期;数据访问通过 IPluginData 能力代理,按租户和插件范围隔离。SDK 仅提供类型化 JSON 记录 CRUD,不提供数据库凭据或原始 SQL 通道。

Task<JsonObject> ExecuteAsync(
    string command, JsonObject input,
    IPluginData data, CancellationToken cancellationToken);

// IPluginData: ListAsync, GetAsync, PutAsync, DeleteAsync
// 更新与删除必须使用实际 expectedUpdatedAt。

审核与许可

版本包提交后进入人工审核,审核结果绑定实际不可变包哈希与清单。应用只有符合发布条件后才进入公共商城。运行、安装和升级仍需核验当前租户的有效许可及插件所需能力;升级不会自行延长许可有效期。

主题插件通过同一审核、购买授权和安装流程启用。主题清单的 themeTokens 仅支持 primary、nav、bg、teal、violet 五种十六进制颜色变量,不接受任意 CSS、HTML 或 JavaScript。
订单、许可和付款是独立状态。试用或零金额订单可按服务端规则授予许可;没有支付适配器时不会显示虚构的付款成功。