private async Task <DialogTurnResult> SetEstablecimientoClase(WaterfallStepContext stepContext, CancellationToken cancellationToken)
        {
            var choice = (FoundChoice)stepContext.Result;

            if (choice.Value == ExitOption)
            {
                await stepContext.Context.SendActivityAsync(MenuBot.Buttons(0, "En que te puedo ayudar?\n\n puedes utilizar los botones de la parte inferior."), cancellationToken);

                return(await stepContext.EndDialogAsync(cancellationToken : cancellationToken));
            }

            stepContext.Values["co_tipo_licencia"] = CodigoList[choice.Index];
            stepContext.Values["no_tipo_licencia"] = choice.Value;

            EstablecimientoClaseDTO establecimientoClaseDTO = new EstablecimientoClaseDTO()
            {
                co_establecimiento_clase = "",
                no_establecimiento_clase = "",
                fl_inactivo = "0"
            };

            CodigoList.Clear();
            DescripcionList.Clear();

            EstablecimientoClaseClient establecimientoClaseClient = new EstablecimientoClaseClient();
            var result = establecimientoClaseClient.GetAllAsync(establecimientoClaseDTO);

            if (result.error_number == 0)
            {
                foreach (EstablecimientoClaseDTO item in result.Data)
                {
                    CodigoList.Add(item.co_establecimiento_clase);
                    DescripcionList.Add(item.no_establecimiento_clase);
                }
            }
            CodigoList.Add("0");
            DescripcionList.Add(ExitOption);

            var options = DescripcionList.ToList();

            var promptOptions = new PromptOptions
            {
                Prompt  = MessageFactory.Text("Por favor seleccione una **Clase de Establecimiento**:"),
                Choices = ChoiceFactory.ToChoices(options),
                Style   = ListStyle.List
            };

            // Prompt the user for a choice.
            return(await stepContext.PromptAsync(nameof(ChoicePrompt), promptOptions, cancellationToken));
        }
        private async Task <DialogTurnResult> MostrarOpciones(WaterfallStepContext stepContext, CancellationToken cancellationToken)
        {
            stepContext.Values[LicenciaInfo] = new LicenciaFuncionamientoInfo();

            EstablecimientoClaseDTO establecimientoClaseDTO = new EstablecimientoClaseDTO()
            {
                co_establecimiento_clase = "",
                no_establecimiento_clase = "",
                fl_inactivo = "0"
            };

            EstablecimientoClaseClient establecimientoClaseClient = new EstablecimientoClaseClient();
            var result = establecimientoClaseClient.GetAllAsync(establecimientoClaseDTO);

            if (result.error_number == 0)
            {
                foreach (EstablecimientoClaseDTO item in result.Data)
                {
                    NombreClaseList.Add(item.no_establecimiento_clase);
                    CodigoClaseList.Add(item.co_establecimiento_clase);
                }
            }

            var options = NombreClaseList.ToList();



            var promptOptions = new PromptOptions
            {
                Prompt  = MessageFactory.Text("Por favor seleccione una **Clase de Establecimiento**:"),
                Choices = ChoiceFactory.ToChoices(options),
                Style   = ListStyle.List
            };

            // Prompt the user for a choice.
            return(await stepContext.PromptAsync(nameof(ChoicePrompt), promptOptions, cancellationToken));
        }