Ich verwende FormFlow. Wenn ein Bot mit allen Fragen beendet und ruft processOrder
, möchte ich mit dem Dialog fortzusetzen, aber ich weiß nicht, wo ich eine andere Methode nennen sollte:Wie ruft man eine andere Methode auf, nachdem processOrder im Chatbot mit FormFlow abgeschlossen wurde?
OnCompletionAsyncDelegate<Form> processOrder = async (context, state) =>
{
await context.PostAsync("You done");
// context.Call(OnFormComplete);
};
Wenn ich so versuchen zu nennen, ich diese Nachricht:
Fehler CS7036 Es gibt kein Argument gegeben, die auf den erforderlichen formalen Parameter 'Lebenslauf' von 'IDialogStack.Call (iDialog, ResumeAfter)' Project1 C entspricht: \ Projects Gute Version \ v-17.2 \. 2017 \ demo-Project1 \ Project1 \ Dialoge \ Form.cs 34 Compiler IntelliSense Active Compiler
nenne ich die Form fließen in diesem Modus in meinem rootdialog.cs:
var myform = new FormDialog<Form>(new Form(), Form.BuildForm, FormOptions.PromptInStart, null);
context.Call(myform, ResumeAfterOptionDialog);
Formbuilder ist:
return new FormBuilder<Form>()
.Field(nameof(Time))
.Field(nameof(Number1))
.Field(nameof(Number2))
.AddRemainingFields()
.Confirm("Would you like to process")
.OnCompletion(processOrder)
.Build();
Ich möchte den Dialog fortzusetzen, weil der Bot gestoppt. Wie kann ich eine andere Methode anrufen und wo soll ich anrufen?
nach Formflow bauen, wie ich für die Antwort ein weiteres Dialog – user2454923