Język

IFormDialog<T> Interfejs

Definicja

Interfejs do sterowania dialogiem FormFlow.

public interface IFormDialog<T> : Microsoft.Bot.Builder.Dialogs.IDialog<T> where T : class
type IFormDialog<'T (requires 'T : null)> = interface
    interface IDialog<'T (requires 'T : null)>
Public Interface IFormDialog(Of T)
Implements IDialog(Of T)

Parametry typu

T

Typ stanu formularza.

Pochodne
Implementuje
IDialog<T>

Uwagi

FormDialog<T> jest implementacją tego interfejsu.

Właściwości

Nazwa Opis
Form

Specyfikacja formularza.

Metody

Nazwa Opis
StartAsync(IDialogContext)

Początek kodu reprezentującego dialog konwersacyjny.

(Odziedziczone po IDialog<TResult>)

Metody rozszerzania

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

Gdy poprzednik IDialog<TResult> zostanie zakończony, złap i obsłuży wszelkie wyjątki typu E.

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

Gdy poprzednik IDialog<TResult> się zakończy, wykryj i obsłuży wszelkie wyjątki.

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

Gdy poprzednik IDialog<TResult> się zakończy, wykonaj kontynuację, aby uzyskać następne IDialog<TResult>.

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

Gdy poprzednik IDialog<TResult> zostanie zakończony, zatrzymaj propagację wyjątku .E

DefaultIfException<T>(IDialog<T>)

Gdy poprzednik IDialog<TResult> zostanie zakończony, zatrzymaj propagację wyjątku.

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

Wykonaj efekt uboczny po IDialog<TResult> zakończeniu.

Loop<T>(IDialog<T>)

Zapętlaj na IDialog<TResult> zawsze.

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

Gdy poprzednik IDialog<TResult> zostanie zakończony, umieść go w kolejce zdarzeń.

PostToUser<T>(IDialog<T>)

Opublikuj użytkownikowi wynik .IDialog<TResult>

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

Gdy poprzednik IDialog<TResult> zostanie ukończony, rzutujemy wynik do nowego IDialog<TResult>.

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

Gdy poprzednik IDialog<TResult> zostanie zakończony, wykonaj następne IDialog<TResult>, a następnie użyj projekcji do połączenia wyników.

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

Gdy poprzednik IDialog<TResult> się zakończy, przejdź przez każdy ICase<T,R> i uruchom " ContextualSelector<T,R>" pierwszego ICase<T,R> , którego wartość zwrócona przez dialog poprzednika spełnia.

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

Wykonaj akcję po IDialog<TResult> jej zakończeniu.

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

Zadzwoń do voided, IDialog<TResult>zignoruj wynik, a potem zrestartuj oryginalny dialog wait.

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

Zadzwoń do voided, IDialog<TResult>zignoruj wynik, a potem zrestartuj oryginalny dialog wait.

WaitToBot<T>(IDialog<T>)

Po zakończeniu poprzednika przesłaj wiadomość do bota do łańcucha.

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

Gdy poprzednik IDialog<TResult> się zakończy, oceń predykat i zdecyduj, czy kontynuować.

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

Stwórz taką IDialog<TResult> pętlę czasu.

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

Odekoruj dialog punktacją, aby przedmiot mógł uczestniczyć w stosie dialogowym.

Dotyczy