DialogContext.EndDialogAsync(Object, CancellationToken) 方法
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
結束對話方塊,方法是從堆疊取出對話方塊,並將選擇性的結果傳回給對話方塊的父系。 父對話方塊是透過 或 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 屬性中的傳回值。