Трудно, если у вас есть вопрос за вопросом к пользователю.Для этого вам может понадобиться отдельный класс Dialog с
List<string>
для набора вопросов, построенного, конечно, во время выполнения.В конце он может вернуться к исходному классу Dialog.Я реализовал нечто подобное для вакансий на разных должностях.Каждый пост имеет свой набор вопросов.Элемент управления остается в этом QuestionnaireDialog (отдельный класс Dialog), задавая следующий вопрос, как только пользователь ответит на текущий вопрос.Я не думаю, что QnA Maker поможет в этом.Я не видел QnA Maker много, ни V4.Я сделал выше на v3, и отображение намерения-ответа было в таблице базы данных.Я предлагаю выровнять вашу структуру, если это возможно, с нескольких уровней до двухуровневых, чтобы избежать дерева.
Например:
Leaves --> Care Leave --> Medical Care Leave
--> Family Care Leave
Измените структуру на
Leaves --> Medical Care Leave
--> Family Care Leave
, чтобы вы могли управлять ею с помощью объектов LUIS.Простой запрос об отпуске принесет ответ, в котором будут доступны все типы листьев, а конкретный вопрос о типе отпуска даст другой ответ, специфичный для данного типа.Я снова сделал нечто подобное без QnA Maker в v3.Если вы не можете сгладить структуру, вам, вероятно, придется ввести смесь двух подходов, потому что вы хотите ответить на конкретный запрос типа отпуска (сущности LUIS) и отправить пользователя с помощью вопросника.