如何将用户选项传递给 FormBuilder 表单?
How to pass in options for user to FormBuilder form?
我正在尝试使用 Bot Framework 创建一个新的 FormBuilder 表单,对于我的一个字段,我需要验证输入的选项是否与某些用户特定的选项相匹配。我将如何传递用户特定的选项来验证这些?
谢谢!这就是我构建表单的方式:
internal static IDialog<Form> CreateFormDialog()
{
return Chain.From(() => FormDialog.FromForm(Form.BuildForm));
}
// Called when a user interacts with the bot through slack
public virtual async Task<HttpResponseMessage> Post([FromBody]Activity activity)
{
await Conversation.SendAsync(activity, CreateFormDialog);
var response = Request.CreateResponse(HttpStatusCode.OK);
return response;
}
您可以使用 new 关键字创建 FormDialog 并将选项传递给表单状态,而不是使用 FormDialog.FromForm。
var myForm = new FormDialog<MyFormState>(new MyFormState(options), Form.BuildForm, FormOptions.PromptInStart);
我正在尝试使用 Bot Framework 创建一个新的 FormBuilder 表单,对于我的一个字段,我需要验证输入的选项是否与某些用户特定的选项相匹配。我将如何传递用户特定的选项来验证这些?
谢谢!这就是我构建表单的方式:
internal static IDialog<Form> CreateFormDialog()
{
return Chain.From(() => FormDialog.FromForm(Form.BuildForm));
}
// Called when a user interacts with the bot through slack
public virtual async Task<HttpResponseMessage> Post([FromBody]Activity activity)
{
await Conversation.SendAsync(activity, CreateFormDialog);
var response = Request.CreateResponse(HttpStatusCode.OK);
return response;
}
您可以使用 new 关键字创建 FormDialog 并将选项传递给表单状态,而不是使用 FormDialog.FromForm。
var myForm = new FormDialog<MyFormState>(new MyFormState(options), Form.BuildForm, FormOptions.PromptInStart);