如何在bot builder中添加嵌套对话框/如何根据c#代码条件添加新对话框

如何在bot builder中添加嵌套对话框/如何根据c#代码条件添加新对话框,c#,botframework,C#,Botframework,我试图根据条件添加新对话框,默认情况下,我们提到要运行的对话框,它包含多个工作正常的活动,但在这两个活动之间,任何活动都需要根据我们编写的条件添加新对话框,然后再如何添加该对话框 主对话框->{AskNamestep,AskGenderstep{在这个方法中,我会设置一些条件,比如如果男性进入另一个对话框,或者继续相同的对话框},AskMessage} 请给我一些解决方案 调用turnContext.BeginDialogAsync(),类似于: stepContext.BeginDialog

我试图根据条件添加新对话框,默认情况下,我们提到要运行的对话框,它包含多个工作正常的活动,但在这两个活动之间,任何活动都需要根据我们编写的条件添加新对话框,然后再如何添加该对话框

主对话框->{AskNamestep,AskGenderstep{在这个方法中,我会设置一些条件,比如如果男性进入另一个对话框,或者继续相同的对话框},AskMessage}

请给我一些解决方案


调用
turnContext.BeginDialogAsync()
,类似于:

stepContext.BeginDialogAsync(name of(BookingDialog),new BookingDetails(),cancellationToken);

您调用
turnContext.BeginDialogAsync()
,类似于:

stepContext.BeginDialogAsync(name of(BookingDialog),new BookingDetails(),cancellationToken);

你能详细解释一下吗。因为从我看到的图像中,nesteddialog继承了IBot而不是ComponentDialog。你能用我的答案解决这个问题吗?如果是这样,请“接受”并投票,这样其他人可以快速找到答案,我可以从我的支持跟踪中清除这个问题。如果没有,让我知道我还能提供什么帮助!你能详细说明一下吗。因为从我看到的图像中,nesteddialog继承了IBot而不是ComponentDialog。你能用我的答案解决这个问题吗?如果是这样,请“接受”并投票,这样其他人可以快速找到答案,我可以从我的支持跟踪中清除这个问题。如果没有,让我知道我还能提供什么帮助!我只是想补充一点,当我处理像这样的分支时,我通常会将每个分支放在一个单独的对话框中,而不是在“main”对话框中有一个分支。你可以做到这一点,但要记住,除非你有一些条件跳过步骤,你不能在中间启动这个新的对话框。此外,您需要确保将名称和性别传递给新对话框,或将其保存到用户或会话状态(如果新对话框需要这些值)。我只想补充一点,当我处理这样的分支时,我通常会将每个分支放在单独的对话框中,而不是在“main”中有一个分支对话你可以做到这一点,但要记住,除非你有一些条件跳过步骤,你不能在中间启动这个新的对话框。此外,您需要确保将名称和性别传递给新对话框,或将其保存到用户或会话状态(如果新对话框需要这些值)。