private async Task <DialogTurnResult> IntroHospitalFindingStep(WaterfallStepContext stepContext, CancellationToken cancellationToken) { DonneesExcel donneesExcel = new DonneesExcel(); if (stepContext.Options != null) { localisation = ""; var localisationDetected = (String[])stepContext.Options; for (int i = 0; i < localisationDetected.Length; i++) { localisation += localisationDetected[i]; } } if (String.IsNullOrEmpty(localisation)) { // Asking Localisation. var promptOptions = new PromptOptions { Prompt = MessageFactory.Text("Veuillez entrer une province, préfecture ou ville."), RetryPrompt = MessageFactory.Text("Je suis désolé, mais la localisation entrée n'est pas enregistrée dans notre base de donnée. Veuillez s'il vous plaît entrer une localisation valide."), }; return(await stepContext.PromptAsync(DialogIds.localisationPrompt, promptOptions, cancellationToken)); } else if (!donneesExcel.ExistLocalisationHopital(localisation)) { // Asking Localisation. var promptOptions = new PromptOptions { Prompt = MessageFactory.Text($"La localisation {localisation} n'existe pas dans notre base de donnée. Veuillez entrer une localisation valide"), RetryPrompt = MessageFactory.Text("Je suis désolé, mais la localisation entrée n'est pas enregistrée dans notre base de donnée. Veuillez s'il vous plaît entrer une localisation valide."), }; return(await stepContext.PromptAsync(DialogIds.localisationPrompt, promptOptions, cancellationToken)); } return(await stepContext.NextAsync(localisation, cancellationToken)); }
private static Task <bool> VerificationLocalisation(PromptValidatorContext <string> promptContext, CancellationToken cancellationToken) { var donneesExcel = new DonneesExcel(); return(Task.FromResult(promptContext.Recognized.Succeeded && donneesExcel.ExistLocalisationHopital(promptContext.Recognized.Value))); }