用途:DataManager 是 Syncfusion 的 TypeScript/JavaScript(ES6+) 数据管理组件,用于统一处理本地数组与远程服务的数据绑定、查询与增删改查。
主要能力:本地绑定(直接数组或显式 JsonAdaptor)与远程绑定;查询构造支持 where、sortBy/orderBy、take/skip 分页、select 投影、group 分组、aggregate 聚合与 expand 关系;CRUD 提供 insert、update、remove 及 saveChanges 批量操作;支持 enableCache 结果缓存与 timeTillExpiration 缓存时长、enablePersistence 状态持久化、crossDomain、offline、timeZoneHandling 等配置。提供 10 种适配器:JsonAdaptor、WebApiAdaptor、UrlAdaptor、RemoteSaveAdaptor、ODataAdaptor、ODataV4Adaptor、WebMethodAdaptor、GraphQLAdaptor、Custom DataAdaptor、CustomAdaptor。
使用方式:从 @syncfusion/ej2-data 引入 DataManager、Adaptor 与 Query,配置 url 或 json 与 adaptor 后,用 executeQuery(new Query()...) 执行查询,通过 Promise 或 async/await 处理结果与错误。示例:dataManager.insert({ CustomerID: 'VINET', Freight: 32.50 }, 'Orders'),update('OrderID', {OrderID:10248,Freight:45.50}, 'Orders'),remove('OrderID', 10248, 'Orders')。
适用场景:需要在前端组件(如表格)中统一做过滤、排序、分页、分组与远程 CRUD 的 Web 应用。
限制与安全:技能只生成代码,不执行数据操作或请求远程端点。文档要求远程绑定仅用 HTTPS,URL 用私有字符串变量而非硬编码,校验并映射响应,记录外部调用,CORS 使用具体可信来源而非通配符。当用户给出服务 URL 但未明确适配器类型时,必须停止生成,先向用户确认适配器后再继续。安装命令与具体依赖版本、各适配器后端响应细节在资料中未完整提供。