4

我在 botframework 中创建了一个表单流。我想更改确认选项,默认情况下需要“是”和“否”。但我希望它继续“是”,即使用户输入“OK”、“Ya”、“Yeah”等。我如何添加确认选项

4

1 回答 1

5

您需要将新术语添加到YesFormBuilder 配置的数组中。就像是:

public static IFormBuilder<T> CreateCustomForm<T>()
    where T : class
{
    var form = new FormBuilder<T>();
    var yesTerms = form.Configuration.Yes.ToList();
    yesTerms.Add("Ya");
    form.Configuration.Yes = yesTerms.ToArray();

    return form;
}

然后你可以使用:

 return CreateCustomForm<MyForm>()

原因如下:

Confirmation字段,将其类型设置为 bool。在某些时候,根据它的类型为 field 定义了一个识别器。在这种情况下,该Confirmation字段将使用RecognizeBool识别器。

识别器使用表单配置中定义的Yes/No数组(最初是从资源文件中检索到的)来进行解析

Confirmation字段添加到表单时,还会添加一个 ConfirmStep 步骤。ConfirmStep是在游戏后期最终调用识别器来匹配和解析术语的步骤。

于 2017-03-22T10:19:50.190 回答