Sprache

Chain Klasse

Definition

Eine flüssige, kettbare Schnittstelle für IDialogs.

public static class Chain
type Chain = class
Public Module Chain
Vererbung
Chain

Methoden

Name Beschreibung
Case<R>(Regex, ContextualSelector<String,R>)

Konstruiert einen Fall basierend auf einem regulären Ausdruck.

Case<T,R>(Func<T,Boolean>, ContextualSelector<T,R>)

Er baut einen Fall auf.

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

Wenn das Antecedent IDialog<TResult> abgeschlossen ist, fangen und behandeln Sie alle Ausnahmen vom Typ E.

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

Wenn das Antecedent IDialog<TResult> abgeschlossen ist, fangen und bearbeiten Sie alle Ausnahmen.

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

Wenn das Antezedent IDialog<TResult> abgeschlossen ist, führt man die Fortsetzung aus, um das nächste IDialog<TResult>zu erzeugen.

Default<T,R>(ContextualSelector<T,R>)

Erstellt einen Fall, der als Standard verwendet wird.

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

Wenn das Antecedent IDialog<TResult> abgeschlossen ist, stoppt die Ausbreitung einer Ausnahme von E.

DefaultIfException<T>(IDialog<T>)

Wenn das Antecedent IDialog<TResult> abgeschlossen ist, stoppt die Ausbreitung der Ausnahme.

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

Führe einen Nebeneffekt aus, nachdem ein abgeschlossen ist IDialog<TResult> .

Fold<T>(IDialog<IEnumerable<IDialog<T>>>, Func<T,T,T>)

Falten Sie Elemente aus einer Aufzählung von Dialogen.

From<T>(Func<IDialog<T>>)

Konstruiere eine IDialog<TResult> , die beim Start eine neue Kopie einer anderen IDialog<TResult> erstellt.

Loop<T>(IDialog<T>)

Schleife das IDialog<TResult> Forever.

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

Wenn das Antecedent IDialog<TResult> abgeschlossen ist, posten Sie das Element in die Event-Warteschlange.

PostToChain()

Posten Sie die Nachricht des Nutzers an Chain.

PostToUser<T>(IDialog<T>)

Poste dem Nutzer das Ergebnis eines IDialog<TResult>.

Return<T>(T)

Erzeugt einen IDialog<TResult> Wert, der einen Wert zurückgibt.

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

Wenn das Antecedent IDialog<TResult> abgeschlossen ist, projiziert man das Ergebnis in ein neues IDialog<TResult>.

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

Wenn das Antecedent IDialog<TResult> abgeschlossen ist, wird das nächste IDialog<TResult>ausgeführt und die Projektion verwendet, um die Ergebnisse zu kombinieren.

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

Wenn das Antezedent IDialog<TResult> abgeschlossen ist, gehen Sie jedes ICase<T,R> durch und führen Sie das ContextualSelector<T,R>" des ersten ICase<T,R> aus, das der vom Antezedent-Dialog zurückgegebene Wert erfüllt.

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

Führe eine Aktion nach Abschluss IDialog<TResult> aus.

Unwrap<T>(IDialog<IDialog<T>>)

Wenn der Antezedent IDialog<TResult> mit T IDialog<TResult> vollständig ist, entwickle das Ergebnis in ein neues IDialog<TResult>.

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

Ruf das Nulled IDialog<TResult>auf, ignoriere das Ergebnis und starte dann den ursprünglichen Dialog neu und warte.

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

Ruf das Nulled IDialog<TResult>auf, ignoriere das Ergebnis und starte dann den ursprünglichen Dialog neu und warte.

WaitToBot<T>(IDialog<T>)

Poste die Nachricht an die Kette, nachdem das Antecedent abgeschlossen ist.

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

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

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

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

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

Dekoriere einen Dialog mit einer Wertzahl, damit eine Wertende am Dialogstapel teilnehmen kann.

Gilt für: