为了账号安全,请及时绑定邮箱和手机立即绑定

在 Microsoft Bot Framework 的 sdk v4 中使用 FormDialog

在 Microsoft Bot Framework 的 sdk v4 中使用 FormDialog

C#
慕码人8056858 2022-11-21 21:31:18

我有一个用 sdk v3 构建的聊天机器人。我正在将机器人更新为 sdkv4 并将其移动到 core2.0。


   protected async Task<DialogTurnResult> BeginChildDialogAsync(DialogContext dc, OnTurnProperty onTurnProperty)

    {

        var activity = dc.Context.Activity;

        var actionValue = onTurnProperty.Intent;

        switch (onTurnProperty.Intent)

        {


            case "quickquote":

                await dc.Context.SendActivityAsync("THIS IS QUICK QUOTE!");

                var survey = new FormDialog<QQForm>(new QQForm(), QQForm.BuildForm, FormOptions.PromptInStart, null);

                dc.Call(survey, AfterSurvey);

当我调用使用 formdialog 构建的表单时。我得到错误dc.call(survey,AfterSurvey)


严重性代码描述项目文件行抑制状态错误 CS1061 'DialogContext' 不包含 'Call' 的定义并且找不到接受类型为 'DialogContext' 的第一个参数的可访问扩展方法 'Call'(您是否缺少 using 指令或装配参考?)


如何在 sdk v4 中更改我的表单对话框?


查看完整描述

1 回答

?
开满天机

TA贡献1526条经验 获得超12个赞

Bot Framework v4 不再有 FormFlows 的概念。存档的方法是结合使用各种技术。我建议阅读以下内容:

阅读完这些文档后,您应该有足够的能力开始调整您的代码。

官方 bot builder 示例 repo 中提供了另一个收集用户各种输入的很好的例子。看看这里

我会选择一个ComponentDialog包含WaterfallDialog一些验证的。通过这种方式,您可以重复使用表单流中惯用的所有内容。


查看完整回答
反对 回复 2022-11-21
  • 1 回答
  • 0 关注
  • 7 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信