Sdílet prostřednictvím


Chain Třída

Definice

Plynulé, zřetězené rozhraní pro IDialogs.

public static class Chain
type Chain = class
Public Module Chain
Dědičnost
Chain

Metody

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

Vytvoří případ založený na regulárním výrazu.

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

Vytvoří případ.

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

Po dokončení antecedent IDialog<TResult> zachyťte a zpracujte všechny výjimky typu E.

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

Po dokončení operace antecedent IDialog<TResult> zachyťte a zpracujte všechny výjimky.

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

Jakmile se antecedent IDialog<TResult> dokončí, spuštěním pokračování vygenerujte další IDialog<TResult>.

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

Vytvoří případ, který se použije jako výchozí.

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

Po dokončení antecedentu IDialog<TResult> zastavte šíření výjimky .E

DefaultIfException<T>(IDialog<T>)

Po dokončení antecedent IDialog<TResult> zastavte šíření výjimky.

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

Po dokončení proveďte vedlejší efekt IDialog<TResult> .

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

Složte položky z výčtu dialogových oken.

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

Vytvořte novou IDialog<TResult> kopii jiné, která při spuštění vytvoří novou kopii jiné IDialog<TResult> .

Loop<T>(IDialog<T>)

Smyčka navždy.IDialog<TResult>

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

Po dokončení operace antecedent IDialog<TResult> publikujte položku do fronty událostí.

PostToChain()

Publikujte zprávu od uživatele do chainu.

PostToUser<T>(IDialog<T>)

Publikujte uživateli výsledek IDialog<TResult>.

Return<T>(T)

Vytvoří , IDialog<TResult> který vrátí hodnotu.

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

Po dokončení operace antecedent IDialog<TResult> promítněte výsledek do nového IDialog<TResult>objektu .

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

Po dokončení operace antecedent IDialog<TResult> spusťte další IDialog<TResult>a pomocí projekce zkombinujte výsledky.

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

Jakmile se antecedent IDialog<TResult> dokončí, projděte každý ICase<T,R> z nich a spusťte ContextualSelector<T,R>" první ICase<T,R> hodnoty, které vrácené hodnota dialogovým oknem antecedent vyhovuje.

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

Po dokončení proveďte akci IDialog<TResult> .

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

Po dokončení funkce antecedent IDialog<TResult> , kde je IDialog<TResult> hodnota T, rozbalte výsledek do nového IDialog<TResult>objektu .

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

Volejte voided IDialog<TResult>, ignorujte výsledek a pak restartujte původní dialogové okno čekání.

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

Volejte voided IDialog<TResult>, ignorujte výsledek a pak restartujte původní dialogové okno čekání.

WaitToBot<T>(IDialog<T>)

Po dokončení antecedentu publikujte zprávu do řetězu robotovi.

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

Po dokončení antecedent IDialog<TResult> vyhodnoťte predikát a rozhodněte se, zda chcete pokračovat.

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

Vytvořte smyčku IDialog<TResult> while.

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

Ozdobte dialogové okno bodovatelným objektem, aby se bodovatelný mohl účastnit zásobníku dialogových oken.

Platí pro