Språk

Chain Klass

Definition

Ett flytande, kedjebart gränssnitt för IDialogs.

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

Metoder

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

Konstruerar ett fall baserat på ett reguljärt uttryck.

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

Bygger ett fall.

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

När antecedenten IDialog<TResult> har slutförts, fånga och hanterar eventuella undantag av typen E.

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

När föregångaren IDialog<TResult> har slutförts, fånga och hantera eventuella undantag.

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

När antecedenten IDialog<TResult> har fullbordats, kör fortsättningen för att producera nästa IDialog<TResult>.

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

Bygger ett case som används som standard.

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

När antecedenten IDialog<TResult> har fullbordats, stoppa utbredningen av ett undantag av E.

DefaultIfException<T>(IDialog<T>)

När antecedenten IDialog<TResult> är fullbordad, stoppa utbredningen av undantaget.

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

Utför en bieffekt efter att en IDialog<TResult> är klar.

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

Vik objekt från en uppräkning av dialoger.

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

Konstruera en IDialog<TResult> som gör en ny kopia av en annan IDialog<TResult> när den startar.

Loop<T>(IDialog<T>)

Loop för IDialog<TResult> evigt.

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

När antecedenten IDialog<TResult> är klar, posta objektet i händelsekön.

PostToChain()

Skicka meddelandet från användaren till Chain.

PostToUser<T>(IDialog<T>)

Publicera till användaren resultatet av en IDialog<TResult>.

Return<T>(T)

Skapar en IDialog<TResult> som returnerar ett värde.

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

När antecedenten IDialog<TResult> har avslutats, projicera resultatet till en ny IDialog<TResult>.

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

När antecedenten IDialog<TResult> har slutförts, exekveras nästa IDialog<TResult>, och använd projektionen för att kombinera resultaten.

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

När antecedenten IDialog<TResult> har slutförts, gå igenom varje ICase<T,R> och kör ContextualSelector<T,R>" av den första ICase<T,R> som det returnerade värdet från antecedentdialogen uppfyller.

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

Utför en åtgärd efter att de IDialog<TResult> slutfört.

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

När antecedenten IDialog<TResult> där T är IDialog<TResult> fullständig, vecklas ut resultatet till en ny IDialog<TResult>.

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

Anropa voided IDialog<TResult>, ignorera resultatet, och starta sedan om den ursprungliga dialogen vänta.

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

Anropa voided IDialog<TResult>, ignorera resultatet, och starta sedan om den ursprungliga dialogen vänta.

WaitToBot<T>(IDialog<T>)

Posta meddelandet till boten i kedjan efter att antecedenten är klar.

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

När antecedenten IDialog<TResult> är fullbordad, utvärdera predikatet och avgör om du ska fortsätta.

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

Skapa en IDialog<TResult> som representerar en while-loop.

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

Dekorera en dialog med en poängbar, så att en poängbar kan delta i dialogstacken.

Gäller för