我正在使用Bot Framework进行我的一个项目。在处理PromptDialog.Confirm函数的回复时,它似乎陷入了循环。
namespace Genome
{
public class InitiateDialog : IDialog<object>
{
public async Task StartAsync(IDialogContext context)
{
context.Wait(ConversationStarted);
}
public async Task ConversationStarted(IDialogContext context, IAwaitable<IMessageActivity> message)
{
await context.PostAsync("Hi!");
PromptDialog.Confirm(
context: context,
resume: ResumeAndPromptPlatformAsync,
prompt: "Would you like to upload the document?",
retry: "I didn't understand. Please try again."
);
}
public async Task ResumeAndPromptPlatformAsync(IDialogContext context, IAwaitable<bool> result)
{
await context.PostAsync("Input Received");
}
}
}
执行此代码时,永远不会到达ResumeAndPromptPlatformAsync函数。每次在PromptDialog.Confirm()中选择Yes/No时,Bot仿真器都会回到ConversationStarted()并再次询问相同的问题。