У меня есть 4 Диалогов в моем проекте первого один являетсяMS Bot с множественной формой Dialog
RootDialog
с некоторым перечислением. Это мой диалог корень так Если пользователь выбирает первый вариант, то я хочу, чтобы отправить его в
CreateContact
Диалог, который я добавил ниже, и если selcts пользователь
GetContact
или
SendMail
тогда я пошлю его в соответствующий диалог, но я не могу назвать диалог формы соседнего по завершению или выбору первого диалога.
[Serializable]
public enum RootOptions
{
CreateContact = 1, GetContact = 2, SendMail
};
[Serializable]
public class RootForm
{
public RootOptions? Option;
public static IForm<RootForm> BuildForm()
{
return new FormBuilder<RootForm>()
.Message("Welcome to TEST BOT!")
.OnCompletion(async (context, rootoption) =>
{
switch(rootoption.Option.Value.ToString()) "")
{
case "CreateContact":
//How to call Contact Dialog
break;
case "GetContact":
//Call Get Contact Dialog
break;
case "SendMail":
//Call Send Mail Dialog
break;
}
})
.Build();
}
}
Создать контакт Dialog
[Serializable]
public class ContactForm
{
[Prompt("What is the name? {||}")]
public string Name;
[Prompt("What is the Mobile No? {||}")]
public string Mobile;
[Prompt("What is the Email? {||}")]
public string Email;
public static IForm<ContactForm> BuildForm()
{
return new FormBuilder<ContactForm>()
.Message("Let's create a contact")
.OnCompletion(async (context, profileForm) =>
{
await context.PostAsync("Your contact has been created.");
})
.Build();
}
}
Отправить Dialog
[Serializable]
public class MailForm
{
[Prompt("What is the Email Id? {||}")]
public string Email;
[Prompt("What is the Subject? {||}")]
public string subject;
[Prompt("What is the Message? {||}")]
public string Message;
public static IForm<MailForm> BuildForm()
{
return new FormBuilder<MailForm>()
.Message("Let's Send a Mail")
.OnCompletion(async (context, mailForm) =>
{
await context.PostAsync("Mail Sent.");
})
.Build();
}
}
Я думаю, что кто бы ни дал отрицательный отзыв, также должен быть комментарий, для которого он делает это, с помощью которого я должен исправить свою проблему. Спасибо. –
В итоге я нашел ответ на что-то подобное. Пожалуйста, очистите свой вопрос, чтобы он протекал правильно. Вы заявляете, что у вас (было) 4 диалога; но это неверно, это должны быть формы, а не диалоги - в частности, rootFORM, contactFORM и mailFORM ... – zxed
@zxed спасибо за отзыв, в настоящее время я путешествую и не умею отлично редактировать с мобильных устройств, сделаю это как можно скорее :) –