1

ある条件に基づいて、通常のダイアログまたは のいずれかを呼び出す必要があるという要件がありますがLuisDialog、同じことを達成することはできません。

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

問題は次のとおりです
。2 番目の条件が満たされると、 内のロジックが実行されますSimpleIDialog。に入る代わりに 1 番目の条件を満たした場合、SampleLuisDialog再び の に入りstartAsyncますSimpleIDialog。ここで何が間違っていますか?

4

1 に答える 1

1

最初に呼び出された Dialog 内で、ある時点で Context.Done を呼び出す必要があります。その前に、ユーザーはそのダイアログで「立ち往生」しています。

したがって、別のダイアログを開始する前に、最初に呼び出されたダイアログを「閉じる」必要があります。

于 2016-06-28T16:30:20.047 に答える