Quantcast
Channel: かずきのBlog@hatena
Viewing all articles
Browse latest Browse all 1387

Bot Frameworkでenumの選択肢を日本語にしたい

$
0
0

デフォルト英語フレンドりーなのでEnumの選択肢はEnumの値がそのまま出てきます。

Formを定義するときに以下のようにFieldReflectorを使うと、日本語で表示させることができます。

returnnew FormBuilder<Order>()
    .Message("注文をお伺いします")
    .Field(new FieldReflector<Order>(nameof(Order.Drink))
        .SetDefine((state, field) =>
        {
            field.AddDescription(Size.S, "Sサイズ");
            field.AddDescription(Size.M, "Mサイズ");
            field.AddDescription(Size.L, "Lサイズ");
            return Task.FromResult(true);
        }))
    .Build();

OrderSizeの定義は以下のような感じ。

using Microsoft.Bot.Builder.FormFlow;
using System;

namespace FormDialogSample.Models
{
    publicenum Size
    {
        S = 1, M, L
    }

    [Serializable]
    publicclass Order
    {
        [Prompt("飲み物のサイズは何にしますか?{||}")]
        public Size Drink { get; set; }
    }
}

Viewing all articles
Browse latest Browse all 1387

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>