C# 使单击的按钮重定向到特定页面 公共虚拟异步任务ShowAnnualConferenceTicket(IDialogContext上下文,IAwaitable活动) { var消息=等待活动; 提示对话框。选择( 上下文:上下文, 简历:ChoiceReceivedAsync, 选项:(IEnumerable)Enum.GetValues(typeof(ProductGroups)), 提示:“”, promptStyle:promptStyle.Auto ); } 公共虚拟异步任务ChoiceReceivedAsync(IDialogContext上下文,IAwaitable活动) { ProductGroups响应=等待活动; 调用(新的annualplandalog(response.ToString()),ChildDialogComplete); } 公共虚拟异步任务ChildDialogComplete(IDialogContext上下文,IAwaitable响应) { var响应=等待响应作为活动; if(respond=ProductGroups.moregories) { wait context.PostAsync(“单击此处查看更多类别”); 上下文。完成(本); } } 公共枚举产品组{ 玩具, 电子学 电话, 健康 美女 计算机, 摄像机, 珠宝店, 手表, 婚礼, 更多类别 }

C# 使单击的按钮重定向到特定页面 公共虚拟异步任务ShowAnnualConferenceTicket(IDialogContext上下文,IAwaitable活动) { var消息=等待活动; 提示对话框。选择( 上下文:上下文, 简历:ChoiceReceivedAsync, 选项:(IEnumerable)Enum.GetValues(typeof(ProductGroups)), 提示:“”, promptStyle:promptStyle.Auto ); } 公共虚拟异步任务ChoiceReceivedAsync(IDialogContext上下文,IAwaitable活动) { ProductGroups响应=等待活动; 调用(新的annualplandalog(response.ToString()),ChildDialogComplete); } 公共虚拟异步任务ChildDialogComplete(IDialogContext上下文,IAwaitable响应) { var响应=等待响应作为活动; if(respond=ProductGroups.moregories) { wait context.PostAsync(“单击此处查看更多类别”); 上下文。完成(本); } } 公共枚举产品组{ 玩具, 电子学 电话, 健康 美女 计算机, 摄像机, 珠宝店, 手表, 婚礼, 更多类别 },c#,botframework,C#,Botframework,您好,我需要这些方面的帮助,我一直在尝试获取枚举常量生成的选项列表,每个选项都会将我重定向到不同的页面,但我知道如何操作。有什么帮助吗?如果你想打开一个url,那么你只需按一下按钮就可以了。您可以创建带有标题和链接的词典,也可以使用枚举。以下是我的一些建议: 而不是发送提示 public virtual async Task ShowAnnuvalConferenceTicket(IDialogContext context, IAwaitable<IMessageActivity>

您好,我需要这些方面的帮助,我一直在尝试获取枚举常量生成的选项列表,每个选项都会将我重定向到不同的页面,但我知道如何操作。有什么帮助吗?

如果你想打开一个url,那么你只需按一下按钮就可以了。您可以创建带有标题和链接的词典,也可以使用枚举。以下是我的一些建议:

而不是发送提示

public virtual async Task ShowAnnuvalConferenceTicket(IDialogContext context, IAwaitable<IMessageActivity> activity)
        {
            var message = await activity;

            PromptDialog.Choice(
                context: context,
                resume:ChoiceReceivedAsync ,
                options: (IEnumerable<ProductGroups>)Enum.GetValues(typeof(ProductGroups)),
                prompt: " ",
                promptStyle: PromptStyle.Auto
                );
        }
        public virtual async Task ChoiceReceivedAsync(IDialogContext context, IAwaitable<ProductGroups> activity)
        {
            ProductGroups response = await activity;
            context.Call<object>(new AnnualPlanDialog(response.ToString()), ChildDialogComplete);

        }
        public virtual async Task ChildDialogComplete(IDialogContext context, IAwaitable<object> response)
        {
            var respond = await response as Activity;
            if (respond = ProductGroups.MoreCategories)
            {
                await context.PostAsync("Click here to view more categories");
                context.Done(this);
            }

        }

public enum ProductGroups {
            Toys,
            Electronics,
            Phones,
            Health,
            Beauty,
            Computers,
            Cameras,
            Jewelery,
            Watches,
            Weddings,
            MoreCategories
        }
输出


如果要打开url,则只需使用按钮即可。您可以创建带有标题和链接的词典,也可以使用枚举。以下是我的一些建议:

而不是发送提示

public virtual async Task ShowAnnuvalConferenceTicket(IDialogContext context, IAwaitable<IMessageActivity> activity)
        {
            var message = await activity;

            PromptDialog.Choice(
                context: context,
                resume:ChoiceReceivedAsync ,
                options: (IEnumerable<ProductGroups>)Enum.GetValues(typeof(ProductGroups)),
                prompt: " ",
                promptStyle: PromptStyle.Auto
                );
        }
        public virtual async Task ChoiceReceivedAsync(IDialogContext context, IAwaitable<ProductGroups> activity)
        {
            ProductGroups response = await activity;
            context.Call<object>(new AnnualPlanDialog(response.ToString()), ChildDialogComplete);

        }
        public virtual async Task ChildDialogComplete(IDialogContext context, IAwaitable<object> response)
        {
            var respond = await response as Activity;
            if (respond = ProductGroups.MoreCategories)
            {
                await context.PostAsync("Click here to view more categories");
                context.Done(this);
            }

        }

public enum ProductGroups {
            Toys,
            Electronics,
            Phones,
            Health,
            Beauty,
            Computers,
            Cameras,
            Jewelery,
            Watches,
            Weddings,
            MoreCategories
        }
输出


重定向到不同的页面是什么意思?就像链接重定向到不同的页面是什么意思?就像链接谢谢你,再次感谢你,再次感谢你,再次感谢你
    public static Attachment GetHeroCard(string title, string subTitle, string text, List<CardImage> images, List<CardAction> action)
    {

        HeroCard card = new HeroCard();
        if (!String.IsNullOrEmpty(title))
            card.Title = title;
        if (!String.IsNullOrEmpty(subTitle))
            card.Subtitle = subTitle;
        if (!String.IsNullOrEmpty(text))
            card.Text = text;
        if (images != null)
            card.Images = images;
        if (action != null)
            card.Buttons =  action ;
        return card.ToAttachment();
    }
public enum ProductGroups
{
    [Describe("https://stackoverflow.com/")]
    Toys,
    [Describe("https://stackoverflow.com/")]
    Electronics,
    [Describe("https://stackoverflow.com/")]
    Phones,
    [Describe("https://stackoverflow.com/")]
    Health,
    [Describe("https://stackoverflow.com/")]
    Beauty,
    [Describe("https://stackoverflow.com/")]
    Computers,
    [Describe("https://stackoverflow.com/")]
    Cameras,
    [Describe("https://stackoverflow.com/")]
    Jewelery,
    [Describe("https://stackoverflow.com/")]
    Watches,
    [Describe("https://stackoverflow.com/")]
    Weddings,
    [Describe("More categories")]
    MoreCategories
}