如何从MessageController中调用普通对话框和LuisDialog

时间:2016-06-28 09:37:44

标签: c# botframework luis

我有一个要求,根据某些条件,我需要调用普通对话框或LuisDialog,我无法实现相同的目标。

if(condition == 1)
  return await Conversation.SendAsync(message, () => new SampleLuisDialog());
else
  return await Conversation.SendAsync(message, () => new SimpleIDialog());

问题是:
当它满足第二个条件时,它执行SimpleIDialog内的逻辑。当它满足第一个条件而不是进入SampleLuisDialog时,它再次进入startAsync的{​​{1}}。 我在这里做错了什么?

1 个答案:

答案 0 :(得分:1)

在您第一次调用Dialog时,您必须在某个时刻调用Context.Done。在此之前,用户已经被困住了#34;在那个对话中。

所以在你开始另一个Dialog之前,你必须"关闭"第一个叫做Dialog。