我正在使用Bot Framework,C#Bot Builder和FormFlow(使用FieldRelfector)构建聊天机器人。 在一个步骤中,我需要向用户提出一个未解决的问题,例如“添加任何其他相关信息”,我只想收集一些文本并将其存储起来供以后使用。 我试图将变量定义为String:
[Prompt("Add any other relevant information")]
public string OpenText;
在形式链中,我有:
.Field(new FieldReflector<MyForm>(nameof(OpenText))
.SetType(null)
.SetActive(state => !state.Finished()))
但无论我输入机器人的答案,这都无济于事:
"blah blah" is not a open text option.
如何处理?
答案 0 :(得分:0)
您是否有任何理由使用FieldReflector作为该属性?我建议只为该属性定义一个普通字段(您可以使用FieldReflector定义的字段和仅使用Field定义的字段)。
只需使用:
.Field(nameof(MyForm.OpenText), state => !state.Finished())
如果有理由使用FieldReflector,请使用整个表单定义更新帖子。