C# 为什么重试提示只显示一次?

C# 为什么重试提示只显示一次?,c#,botframework,C#,Botframework,我使用bot框架已经有一段时间了,RetryPrompt只显示一次,这一直困扰着我 我已经浏览了bot builder的github源代码,看起来消息实际上是被发送的,但没有显示在bot框架模拟器中 MultiTurnPromptBot示例中的代码段: var prompoptions=新的prompoptions { Prompt=MessageFactory.Text(“请输入您的年龄”), RetryPrompt=MessageFactory.Text(“输入的值必须大于0且小于150。”

我使用bot框架已经有一段时间了,RetryPrompt只显示一次,这一直困扰着我

我已经浏览了bot builder的github源代码,看起来消息实际上是被发送的,但没有显示在bot框架模拟器中

MultiTurnPromptBot示例中的代码段:

var prompoptions=新的prompoptions
{
Prompt=MessageFactory.Text(“请输入您的年龄”),
RetryPrompt=MessageFactory.Text(“输入的值必须大于0且小于150。”),
};
返回wait wait stepContext.PromptAsync(name of(numberpropt)、prompoptions、cancellationToken);
每次我的消息未通过验证时,我都会收到RetryPrompt。 消息“输入的值必须大于0且小于150”仅显示一次。它实际上显示了这两条消息

我的猜测是仿真器会混淆,因为两条消息实际上具有相同的id(如您所见和所示)


是否有人知道这是否也发生在其他渠道和/或这是否是一个错误/功能

这似乎是仿真器的一个bug。如果您在屏幕截图中查看日志面板,则包含无效值消息的活动将被发送到模拟器,您可以正常检查它,但它不会在聊天控件中显示消息。在Emulator的最新和以前版本上测试了它(对于较低版本来说效果很好,bug似乎在最新版本中)

是指向BotFramework Emulator repo上提交的bug的链接


希望这有帮助

似乎是模拟器中的一个bug。已经在Botframework Emulator repo中提交了相同的申请。您可以在链接中跟踪进度。@ranusharao哇。。。出于某种原因,我没有发现这个问题。谢谢你的链接!将其作为答案发布,我会将其标记为这样,以便其他人可以找到它。修复:也可以在dotnet和javascript SDK中通过清除传出活动的activity.id来解决。