c# - 什么是 PromptOptions.Validations
问题描述
在 BotFramework V4 中,您可以使用自己的验证器函数来验证用户输入:
dialogs.Add(new TextPrompt("textPrompt", TextPromptValidatorAsync));
但是 PromptOptions 类中还有一个Validations 属性。
return await step.PromptAsync(
TextPrompt,
new PromptOptions
{
Prompt = MessageFactory.Text("What is your name?"),
Validations = ??
},
cancellationToken);
它是干什么用的?
解决方案
验证是可用于验证用户响应的对象。
此处的示例显示了一个示例。本质上,在此示例中,它使用的是异步任务:
public Task<bool> CustomPromptValidatorAsync(PromptValidatorContext<string> promptContext, CancellationToken cancellationToken)
这具有实际检查有效内容的逻辑。然后在添加 TextPrompt 对话框时传入:
_dialogs.Add(new TextPrompt("name", CustomPromptValidatorAsync));
Validations 属性是您访问该对象的方式。