## 接口的使用
kd.bos.entity.datamodel.IRefrencedataProvider

- 使用IRefrencedataProvider的程序包
  程序包 | 说明
  --- | ---
  kd.bos.entity.botp.runtime |
  kd.bos.entity.cache |
  kd.bos.entity.datamodel |

- - ### kd.bos.entity.botp.runtime中IRefrencedataProvider的使用

    参数类型为IRefrencedataProvider的kd.bos.entity.botp.runtime中的方法
    限定符和类型 | 方法和说明
    --- | ---
    `void` | ConvertOperationResult.`addTargetDataObjects(IRefrencedataProvider refDataProvider, MainEntityType mainType, java.util.List<kd.bos.dataentity.entity.DynamicObject> dataEntities)` 把生成的目标单，存入缓存
    `kd.bos.dataentity.entity.DynamicObject` | DrawArgs.`getTargetDataEntity(IRefrencedataProvider refProvider)` 基于目标单PageId，到缓存中，读取目标单数据包
    `kd.bos.dataentity.entity.DynamicObject` | BeforeDrawArgs.`getTargetDataEntity(IRefrencedataProvider refProvider)` 基于目标单PageId，到缓存中，读取目标单数据包
    `java.util.List<kd.bos.dataentity.entity.DynamicObject>` | ConvertOperationResult.`loadTargetDataObjects(IRefrencedataProvider refDataProvider, MainEntityType mainType)` 从缓存中，读取全部目标单返回；读取后，自动清除全部缓存
    `java.util.List<kd.bos.dataentity.entity.DynamicObject>` | ConvertOperationResult.`loadTargetDataObjects(IRefrencedataProvider refDataProvider, MainEntityType mainType, boolean releaseCach)` 从缓存中，读取全部目标单返回；读取后，根据参数控制是否清除缓存
    `void` | ConvertOperationResult.`release(IRefrencedataProvider refDataProvider, MainEntityType mainType)` 释放缓存

  - ### kd.bos.entity.cache中IRefrencedataProvider的使用

    参数类型为IRefrencedataProvider的kd.bos.entity.cache中的构造器
    构造器和说明
    `RedisModelCache(IRefrencedataProvider refProvide, MainEntityType dt, java.lang.String pageId)`

  - ### kd.bos.entity.datamodel中IRefrencedataProvider的使用

    实现IRefrencedataProvider的kd.bos.entity.datamodel中的类
    限定符和类型 | 类和说明
    --- | ---
    `class` | `AbstractFormDataModel`
    `class` | `DynamicFormModelProxy`