CommandDialog<T> 类

定义

基于正则表达式匹配输入调度的对话。

[System.Serializable]
public class CommandDialog<T> : Microsoft.Bot.Builder.Dialogs.IDialog<T>
[<System.Serializable>]
type CommandDialog<'T> = class
    interface IDialog<'T>
Public Class CommandDialog(Of T)
Implements IDialog(Of T)

类型参数

T
继承
CommandDialog<T>
属性
实现
IDialog<T>

构造函数

CommandDialog<T>()

基于正则表达式匹配输入调度的对话。

方法

MessageReceived(IDialogContext, IAwaitable<IMessageActivity>)

基于正则表达式匹配输入调度的对话。

On<U>(Regex, ResumeAfter<IMessageActivity>, ResumeAfter<U>)

定义对消息的正则表达式匹配项触发的处理程序。

OnDefault<U>(ResumeAfter<IMessageActivity>, ResumeAfter<U>)

如果未匹配,则定义默认操作。

ResultHandler<U>(IDialogContext, IAwaitable<U>)

传递给子对话的命令对话框的结果处理程序。

显式接口实现

IDialog<T>.StartAsync(IDialogContext)

基于正则表达式匹配输入调度的对话。

扩展方法

Catch<T>(IDialog<T>, Func<IDialog<T>,Exception,IDialog<T>>)

完成前面的 IDialog<TResult> 操作后,捕获并处理任何异常。

Catch<T,E>(IDialog<T>, Func<IDialog<T>,E,IDialog<T>>)

完成前面的 IDialog<TResult> 操作后,捕获并处理 类型 E的任何异常。

ContinueWith<T,R>(IDialog<T>, Chain.Continuation<T,R>)

完成前面的操作 IDialog<TResult> 后,执行延续以生成下一个 IDialog<TResult>

DefaultIfException<T>(IDialog<T>)

完成前面的 IDialog<TResult> 操作后,停止异常的传播。

DefaultIfException<T,E>(IDialog<T>)

完成前面的 IDialog<TResult> 操作后,停止异常的 E传播。

Do<T>(IDialog<T>, Func<IBotContext,IAwaitable<T>,Task>)

完成后执行副作用 IDialog<TResult>

Loop<T>(IDialog<T>)

IDialog<TResult>永远循环 。

PostEvent<T,E>(IDialog<T>, E)

完成前面的 IDialog<TResult> 项后,将项发布到事件队列。

PostToUser<T>(IDialog<T>)

向用户发布 的结果 IDialog<TResult>

Select<T,R>(IDialog<T>, Func<T,R>)

完成前面的 IDialog<TResult> 操作后,将结果投影到新的 IDialog<TResult>中。

SelectMany<T,C,R>(IDialog<T>, Func<T,IDialog<C>>, Func<T,C,R>)

完成前面的 IDialog<TResult> 操作后,执行下一个 IDialog<TResult>,并使用投影合并结果。

Switch<T,R>(IDialog<T>, ICase<T,R>[])

完成前面的 IDialog<TResult> 任务后,完成每个 ICase<T,R> 操作,并运行 ContextualSelector<T,R>前面的对话返回值满足的第 ICase<T,R> 一个 的 。

Then<T,R>(IDialog<T>, Func<IBotContext,IAwaitable<T>,Task<R>>)

完成后执行 IDialog<TResult> 操作。

Void<T>(IDialog<T>, IDialogStack)

调用无效 IDialog<TResult>的 ,忽略结果,然后重启原始对话等待。

Void<T,R>(IDialog<T>)

调用无效 IDialog<TResult>的 ,忽略结果,然后重启原始对话等待。

WaitToBot<T>(IDialog<T>)

在前面的内容完成后,将消息发布到链接至机器人。

Where<T>(IDialog<T>, Func<T,Boolean>)

完成前面的操作 IDialog<TResult> 后,评估谓词并决定是否继续。

While<T>(IDialog<T>, Func<T,IDialog<Boolean>>, Func<T,IDialog<T>>)

创建一个 IDialog<TResult> 表示 while 循环的 。

WithScorable<T,Item,Score>(IDialog<T>, IScorable<Item,Score>)

使用可评分项修饰对话,以便可评分项可以参与对话堆栈。

适用于