DialogContext.EndDialogAsync(Object, CancellationToken) 方法

定義

結束對話方塊,方法是從堆疊取出對話方塊,並將選擇性的結果傳回給對話方塊的父系。 父對話方塊是透過 或 PromptAsync(String, PromptOptions, CancellationToken) 通話結束時啟動 的 BeginDialogAsync(String, Object, CancellationToken) 對話方塊。 父對話方塊會使用任何傳回的結果叫用其 ResumeDialogAsync(DialogContext, DialogReason, Object, CancellationToken) 方法。 如果父對話方塊尚未實 ResumeDialogAsync 作方法,則它也會自動結束,並將結果傳遞至其父代。 如果堆疊上沒有其他父對話方塊,則回合的處理將會結束。

public System.Threading.Tasks.Task<Microsoft.Bot.Builder.Dialogs.DialogTurnResult> EndDialogAsync (object result = default, System.Threading.CancellationToken cancellationToken = default);
member this.EndDialogAsync : obj * System.Threading.CancellationToken -> System.Threading.Tasks.Task<Microsoft.Bot.Builder.Dialogs.DialogTurnResult>
Public Function EndDialogAsync (Optional result As Object = Nothing, Optional cancellationToken As CancellationToken = Nothing) As Task(Of DialogTurnResult)

參數

result
Object

選擇性,要傳遞至父內容的結果。

cancellationToken
CancellationToken

取消語彙基元,可由其他物件或執行緒用來接收取消通知。

傳回

工作,表示要執行的工作已排入佇列。

備註

如果工作成功,結果會指出對話方塊在回合處理之後結束。

一般而言,父內容是啟動對話方塊的對話方塊或 Bot 回合處理常式。 如果父系是對話方塊,堆疊會呼叫父系的 ResumeDialogAsync(DialogContext, DialogReason, Object, CancellationToken) 方法,以將結果傳回父對話方塊。 如果父對話方塊未實作 'ResumeDialogAsync',父代也會結束,並將結果傳遞至下一個父內容。

DialogTurnResult 回的 包含其 Result 屬性中的傳回值。

適用於

另請參閱