IDialog Interface
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
A IDialog is a suspendable conversational process that produces an ignored result.
public interface IDialog : Microsoft.Bot.Builder.Dialogs.IDialog<object>
type IDialog = interface
interface IDialog<obj>
Public Interface IDialog
Implements IDialog(Of Object)
- Implements
Methods
StartAsync(IDialogContext) |
The start of the code that represents the conversational dialog. (Inherited from IDialog<TResult>) |
Extension Methods
Catch<T>(IDialog<T>, Func<IDialog<T>,Exception,IDialog<T>>) |
When the antecedent IDialog<TResult> has completed, catch and handle any exceptions. |
Catch<T,E>(IDialog<T>, Func<IDialog<T>,E,IDialog<T>>) |
When the antecedent IDialog<TResult> has completed, catch and handle any exceptions of type |
ContinueWith<T,R>(IDialog<T>, Chain.Continuation<T,R>) |
When the antecedent IDialog<TResult> has completed, execute the continuation to produce the next IDialog<TResult>. |
DefaultIfException<T>(IDialog<T>) |
When the antecedent IDialog<TResult> has completed, stop the propagation of Exception. |
DefaultIfException<T,E>(IDialog<T>) |
When the antecedent IDialog<TResult> has completed, stop the propagation of an exception of |
Do<T>(IDialog<T>, Func<IBotContext,IAwaitable<T>,Task>) |
Execute a side-effect after a IDialog<TResult> completes. |
Loop<T>(IDialog<T>) |
Loop the IDialog<TResult> forever. |
PostEvent<T,E>(IDialog<T>, E) |
When the antecedent IDialog<TResult> has completed, post the item to the event queue. |
PostToUser<T>(IDialog<T>) |
Post to the user the result of a IDialog<TResult>. |
Select<T,R>(IDialog<T>, Func<T,R>) |
When the antecedent IDialog<TResult> has completed, project the result into a new IDialog<TResult>. |
SelectMany<T,C,R>(IDialog<T>, Func<T,IDialog<C>>, Func<T,C,R>) |
When the antecedent IDialog<TResult> has completed, execute the next IDialog<TResult>, and use the projection to combine the results. |
Switch<T,R>(IDialog<T>, ICase<T,R>[]) |
When the antecedent IDialog<TResult> has completed, go through each ICase<T,R> and run the ContextualSelector<T,R>" of the first ICase<T,R> that the returned value by the antecedent dialog satisfies. |
Then<T,R>(IDialog<T>, Func<IBotContext,IAwaitable<T>,Task<R>>) |
Execute an action after the IDialog<TResult> completes. |
Void<T>(IDialog<T>, IDialogStack) |
Call the voided IDialog<TResult>, ignore the result, then restart the original dialog wait. |
Void<T,R>(IDialog<T>) |
Call the voided IDialog<TResult>, ignore the result, then restart the original dialog wait. |
WaitToBot<T>(IDialog<T>) |
Post to the chain the message to the bot after the antecedent completes. |
Where<T>(IDialog<T>, Func<T,Boolean>) |
When the antecedent IDialog<TResult> has completed, evaluate the predicate and decide whether to continue. |
While<T>(IDialog<T>, Func<T,IDialog<Boolean>>, Func<T,IDialog<T>>) |
Create a IDialog<TResult> that represents a while loop. |
WithScorable<T,Item,Score>(IDialog<T>, IScorable<Item,Score>) |
Decorate a dialog with a scorable, so that a scorable can participate on the dialog stack. |