我正在使用表单流。当机器人完成所有问题和调用processOrder
时,我想继续对话,但我不知道应该在哪里调用另一个方法:
OnCompletionAsyncDelegate<Form> processOrder = async (context, state) =>
{
await context.PostAsync("You done");
// context.Call(OnFormComplete);
};
当我尝试这样打电话时,我收到以下消息:
错误 CS7036 没有给出与 'IDialogStack.Call(IDialog, ResumeAfter)' Project1 C:\Projects\Good Version\v-17.2.2017\demo-Project1\Project1\Dialogs 所需的形参 'resume' 相对应的参数\Form.cs 34 编译器 IntelliSense 主动编译器
我在 rootdialog.cs 中以这种模式调用表单流:
var myform = new FormDialog<Form>(new Form(), Form.BuildForm, FormOptions.PromptInStart, null);
context.Call(myform, ResumeAfterOptionDialog);
表单生成器是:
return new FormBuilder<Form>()
.Field(nameof(Time))
.Field(nameof(Number1))
.Field(nameof(Number2))
.AddRemainingFields()
.Confirm("Would you like to process")
.OnCompletion(processOrder)
.Build();
我想继续对话,因为机器人停止了。我怎样才能调用另一种方法,我应该在哪里调用?