2016-11-18 49 views
1

如何用自己的答案設置提示?用自定義答案提示

目前我有這樣的代碼:

await context.PostAsync(this._questionGroups[0].Questions[_currentQuestion].Text); 

,但我想這樣做:

var question = this._questionGroups[0].Questions[_currentQuestion]; 
var questionText = question.Text; 
var answers = question.Answers; 

PromptDialog.Choice(context, StepTwoQuestionsAsync, answers, questionText); 

但它並沒有看到工作。 任何人都可以幫忙嗎?

回答

0

有點瞎搞,並使用他們的(廢話)文件後,我設法解決這個問題:

private async Task AskQuestion(IDialogContext context, IAwaitable<IMessageActivity> result) 
{ 

    // Get our activity 
    var activity = await result; 

    // Get our question and answers 
    var question = this._questionGroups[_currentStep].Questions[_currentQuestion]; 
    var questionText = question.Text; 
    var answers = question.Answers.Select(m => m.Text).ToList(); 
    var options = new PromptOptions<string>(questionText, options: answers); 

    // Ask our question 
    Choice<string>(context, GetAnswer, options); 
} 

private async Task GetAnswer(IDialogContext context, IAwaitable<string> result) 
{ 

    // Ask our question 
    await context.PostAsync("Does this work?"); 

    // If our category is a camera, forward to our QuestionDialog 
    await context.Forward(new StepTwoDialog(), ResumeAfter, new Activity { Text = await result }, CancellationToken.None); 
} 

很容易理清。

0

搜索abou機器人和QNA,它最適合你尋找什麼...