Freigeben über


FormDialog<T> Klasse

Definition

Formulardialogfeld zum Ausfüllen ihres Zustands.

[System.Serializable]
public sealed class FormDialog<T> : Microsoft.Bot.Builder.Dialogs.IDialog<T>, Microsoft.Bot.Builder.FormFlow.IFormDialog<T>, System.Runtime.Serialization.ISerializable where T : class
[<System.Serializable>]
type FormDialog<'T (requires 'T : null)> = class
    interface IFormDialog<'T (requires 'T : null)>
    interface IDialog<'T (requires 'T : null)>
    interface ISerializable
Public NotInheritable Class FormDialog(Of T)
Implements IDialog(Of T), IFormDialog(Of T), ISerializable

Typparameter

T

Der typ, der ausgefüllt werden soll.

Vererbung
FormDialog<T>
Attribute
Implementiert

Hinweise

Dies ist die Stammklasse zum Verwalten eines FormFlow-Dialogfelds. Sie wird in der Regel über die Factorymethoden FromForm<T>(BuildFormDelegate<T>, FormOptions) oder FromType<T>(FormOptions)erstellt.

Konstruktoren

FormDialog<T>(T, BuildFormDelegate<T>, FormOptions, IEnumerable<EntityRecommendation>, CultureInfo)

Konstruktor zum Erstellen eines FormFlow-Dialogfelds.

Methoden

MessageReceived(IDialogContext, IAwaitable<IMessageActivity>)

Formulardialogfeld zum Ausfüllen ihres Zustands.

Explizite Schnittstellenimplementierungen

IDialog<T>.StartAsync(IDialogContext)

Formulardialogfeld zum Ausfüllen ihres Zustands.

IFormDialog<T>.Form

Formulardialogfeld zum Ausfüllen ihres Zustands.

ISerializable.GetObjectData(SerializationInfo, StreamingContext)

Formulardialogfeld zum Ausfüllen ihres Zustands.

Erweiterungsmethoden

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

Wenn der Vorgänger IDialog<TResult> abgeschlossen ist, können Sie alle Ausnahmen abfangen und behandeln.

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

Wenn der Vorgänger IDialog<TResult> abgeschlossen ist, können Sie alle Ausnahmen des Typs Eabfangen und behandeln.

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

Wenn der Vorgänger IDialog<TResult> abgeschlossen ist, führen Sie die Fortsetzung aus, um die nächste IDialog<TResult>zu erzeugen.

DefaultIfException<T>(IDialog<T>)

Wenn der Vorgänger IDialog<TResult> abgeschlossen ist, beenden Sie die Weitergabe der Ausnahme.

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

Wenn der Vorgänger IDialog<TResult> abgeschlossen ist, beenden Sie die Weitergabe einer Ausnahme von E.

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

Führen Sie einen Nebeneffekt aus, nachdem eine IDialog<TResult> abgeschlossen wurde.

Loop<T>(IDialog<T>)

Schleife für IDialog<TResult> immer.

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

Wenn der Vorgänger IDialog<TResult> abgeschlossen ist, posten Sie das Element in der Ereigniswarteschlange.

PostToUser<T>(IDialog<T>)

Veröffentlichen Sie dem Benutzer das Ergebnis eines IDialog<TResult>.

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

Wenn der Vorgänger abgeschlossen ist, projizieren IDialog<TResult> Sie das Ergebnis in eine neue IDialog<TResult>.

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

Wenn der Vorgänger IDialog<TResult> abgeschlossen ist, führen Sie den nächsten IDialog<TResult>aus, und verwenden Sie die Projektion, um die Ergebnisse zu kombinieren.

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

Wenn der Vorgänger IDialog<TResult> abgeschlossen ist, gehen Sie durch die einzelnen ICase<T,R> Schritte, und führen Sie " ContextualSelector<T,R>der ersten ICase<T,R> aus, die der zurückgegebene Wert durch das vorgehende Dialogfeld erfüllt.

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

Führen Sie nach Abschluss des IDialog<TResult> Vorgangs eine Aktion aus.

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

Rufen Sie die ungültige IDialog<TResult>auf, ignorieren Sie das Ergebnis, und starten Sie dann die ursprüngliche Dialogwarte neu.

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

Rufen Sie die ungültige IDialog<TResult>auf, ignorieren Sie das Ergebnis, und starten Sie dann die ursprüngliche Dialogwarte neu.

WaitToBot<T>(IDialog<T>)

Posten Sie die Nachricht in der Kette an den Bot, nachdem der Vorgänger abgeschlossen ist.

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

Wenn der Vorgänger IDialog<TResult> abgeschlossen ist, bewerten Sie das Prädikat, und entscheiden Sie, ob der Vorgang fortgesetzt werden soll.

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

Erstellen Sie eine IDialog<TResult> , die eine while-Schleife darstellt.

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

Versehen Sie einen Dialog mit einem besenkbaren, sodass ein Korrigable am Dialogstapel teilnehmen kann.

Gilt für: