Skype将项目编号转换为表情符号

时间:2016-08-12 21:41:44

标签: botframework skype-bots

我的机器人在Skype中显示,但6和8显示为表情符号。

enter image description here

这只是一个普通的FormFlow表单:

public class WeightsForm
{
    public Weight FromUnitType { get; set; }
    public double Amount { get; set; }
    public Weight ToUnitType { get; set; }


    public static IForm<WeightsForm> BuildForm()
    {
        return new FormBuilder<WeightsForm>()
            .Message("Now you can select weight conversion details.")
            .AddRemainingFields()
            .Build();
    }
}

基于枚举的权重:

public enum Weight
{
    None,
    Ton,
    Slug,
    Pound,
    Ounce,
    Grain,
    Picogram,
    Nanogram,
    Microgram,
    Milligram,
    Centigram,
    Decigram,
    Gram,
    Dekagram,
    Hectogram,
    Kilogram,
    Megagram,
    Gigagram,
    Teragram
}

在没有表情符号的情况下,在Skype上显示该内容的最佳方法是什么?

1 个答案:

答案 0 :(得分:1)

要解决此问题,您需要更改用于生成数字的模板,以便Skype不会将其解释为表情符号。如果在类上添加此注释: [Template(TemplateUsage.EnumSelectOne,ChoiceFormat =“{0}。{1}”)] 这将解决单一选择的问题。或者,您可以在builder.Configuration.Templates中更改默认模板。如果你想修复EnumSelectMany,你也可以添加它。

您运行的是哪个版本的SDK?如果您正在运行最新版本,除非您已经调整了选择样式,否则默认情况下您应该在Skype上获得按钮。 (下一个版本也会有更多样式选项。)