Bot Framework中的PromptDialog.Choice將顯示正常運行的選項列表。不過,我希望可以選擇取消/退出/退出對話框,並在列表中提供取消/退出/退出選項。 PromptDialog.Choice中有什麼可以重寫,因爲我沒有找到任何取消選項。如何取消/退出或從Bot Framework中的PromptDialog.Choice轉義?
,這裏是我的C#代碼..
PromptDialog.Choice(
context: context,
resume: ChoiceSelectAsync,
options: getSoftwareList(softwareItem),
prompt: "We have the following software items matching " + softwareItem + ". (1), (2), (3). Which one do you want?:",
retry: "I didn't understand. Please try again.",
promptStyle: PromptStyle.PerLine);
例子:
BOT:我們有如下的軟件項目相匹配的Photoshop。 (1),(2),(3)。哪一個你想
- 版本1
- 2版
- 3版
我想要什麼,如果用戶不輸入任何的上方或命令或數量,取消,退出,繞過上面的選項,而不會觸發重試錯誤消息。
我們該怎麼做?
我已經通過了botloilder中的CancleablePromptChoice,但我認爲這不適用於數字輸入,當它顯示我選擇1的列表時,再次n再次顯示列表。我嘗試了重寫ScoreMatch方法,但它不返回列表中的第一項。有什麼缺失? – Sandy
我不認爲目前的Prompt Choice也是如此。如果您希望允許用戶通過編號進行選擇,那麼您可能需要更新TryParse/ScoreMatch方法來執行自定義邏輯,或者在選項中包含該編號。我不認爲CancelablePromptChoice正在使用ScoreMatch。它是在添加該方法之前創建的。您可以重寫該方法並從TryParse調用它。 –
是的,你是正確的當前提示選擇不以這種方式工作。我已經覆蓋了CancleablePromptChoice中的ScoreMatch,如下所示 – Sandy