StatePropertyAccessor interface
定义用于访问在 BotState 对象中创建的状态属性的方法。
注解
若要在状态管理 objet 中创建状态属性,请使用 createProperty<T> 方法。
方法
delete(Turn |
从其后盾存储对象中删除持久化属性。 |
get(Turn |
从其后盾存储对象中读取持久属性。 |
get(Turn |
|
set(Turn |
为支持存储对象的属性分配新值。 |
方法详细信息
delete(TurnContext)
从其后盾存储对象中删除持久化属性。
function delete(context: TurnContext): Promise<void>
参数
- context
- TurnContext
与用户的当前会话轮次的上下文。
返回
Promise<void>
注解
在首次访问时,应将支持存储对象的属性加载到内存中。
await myProperty.delete(context);
get(TurnContext)
从其后盾存储对象中读取持久属性。
function get(context: TurnContext): Promise<T | undefined>
参数
- context
- TurnContext
与用户的当前会话轮次的上下文。
返回
Promise<T | undefined>
注解
在首次访问时,应将支持存储对象的属性加载到内存中。
如果存储对象上当前不存在该属性并且指定了 defaultValue
,则应将 defaultValue
的克隆复制到存储对象。 如果未指定 defaultValue
,则应返回 undefined
值。
const value = await myProperty.get(context, { count: 0 });
get(TurnContext, T)
function get(context: TurnContext, defaultValue: T): Promise<T>
参数
- context
- TurnContext
- defaultValue
-
T
返回
Promise<T>
set(TurnContext, T)
为支持存储对象的属性分配新值。
function set(context: TurnContext, value: T): Promise<void>
参数
- context
- TurnContext
与用户的当前会话轮次的上下文。
- value
-
T
要分配的值。
返回
Promise<void>
注解
在首次访问时,应将支持存储对象的属性加载到内存中。
根据状态系统实现的不同,可能需要执行额外的步骤才能将实际更改保存到磁盘。
await myProperty.set(context, value);