C# 从另一个对话框启动FormFlow对话框

C# 从另一个对话框启动FormFlow对话框,c#,dialog,botframework,formflow,C#,Dialog,Botframework,Formflow,我有一个机器人,它由一个主LuisDialog和另外两个对话框组成。当我得到一个特定的LUISINT时,我启动另一个对话框(这是示例Echo Bot),当我结束该对话框时,它返回到主LuisDialog没有问题 当我让Luisint启动另一个对话框时,它是一个FormFlow对话框,它确实很高兴地启动了该对话框,但是用户必须在对话框运行之前输入一些内容。因此,用户输入“订购三明治”,然后在获得对话框中的第一条消息之前必须输入任何其他内容 有人知道谁启动FormFlow或任何对话框并直接跳入其中而

我有一个机器人,它由一个主LuisDialog和另外两个对话框组成。当我得到一个特定的LUISINT时,我启动另一个对话框(这是示例Echo Bot),当我结束该对话框时,它返回到主LuisDialog没有问题

当我让Luisint启动另一个对话框时,它是一个FormFlow对话框,它确实很高兴地启动了该对话框,但是用户必须在对话框运行之前输入一些内容。因此,用户输入“订购三明治”,然后在获得对话框中的第一条消息之前必须输入任何其他内容

有人知道谁启动FormFlow或任何对话框并直接跳入其中而不等待用户输入任何内容吗?我用来启动三明治对话框的代码如下:

    internal static IFormDialog<SandwichBot.SandwichOrder> MakeRootDialog()
    {


        return FormDialog.FromForm(SandwichBot.SandwichOrder.BuildForm);
    }

    [LuisIntent("OrderSandwich")]
    public async Task StartSandwichOrder(IDialogContext context, LuisResult result)
    {
        IFormDialog<SandwichBot.SandwichOrder> tmp = MakeRootDialog();
        context.Call(tmp, SandwichOrderComplete);
    }
内部静态对话框MakeRootDialog()
{
返回FormDialog.FromForm(SandwichBot.SandwichOrder.BuildForm);
}
[路易辛顿(“订单三明治”)]
公共异步任务StartSandwichOrder(IDialogContext上下文,LuisResult结果)
{
IFormDialog tmp=MakeRootDialog();
调用(tmp,SandwichOrderComplete);
}

正常,已排序。制作表单时,我错过了表单选项。所以,MakeRootDialog应该是

        internal static IFormDialog<SandwichBot.SandwichOrder> MakeRootDialog()
    {
        return FormDialog.FromForm(SandwichBot.SandwichOrder.BuildForm,options: FormOptions.PromptInStart);
    }
内部静态对话框MakeRootDialog()
{
返回FormDialog.FromForm(SandwichBot.SandwichOrder.BuildForm,选项:FormOptions.prompinstart);
}