更改botframework Formflow中的确认选项

Lak*_*aks 4 c# botframework formflow

我在botframework中创建了一个表单流.我想更改确认选项,默认情况下需要"是"和"否".但我想让它继续'是',即使用户输入'OK','Ya','是'等我怎么能添加确认选项

Eze*_*dib 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;
}
Run Code Online (Sandbox Code Playgroud)

然后你就可以使用:

 return CreateCustomForm<MyForm>()
Run Code Online (Sandbox Code Playgroud)

这样做的原因如下:

确认现场,设置它的类型为bool.在某些时候,根据字段的类型为字段定义识别器.在这种情况下,该Confirmation字段将使用RecognizeBool识别器.

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

Confirmation字段添加到表单时,还会添加ConfirmStep步骤.该ConfirmStep的是,在后面的比赛一结束调用识别器做条件的匹配和解析.