Bot Framework Composer v1.0.2 で C# コード生成機能(が復活)

Bot Framework Composer を使うとビジュアルに Bot 開発ができます。
が、「では、生成されるソースコードは?」が気になる人もいると思います。

v1.0.2 では C# のコードを生成する機能 が追加されました。


プロジェクト作成後の初期設定では C# コードは生成されません。

生成の手順は簡単、Settings を一つ変えるだけ。

[Settings] – [Runtime Config] で [Use custom runtime] をオンにして [Get a new copy of the runtime code] を開くだけ。
v1.0.2 では C# だけが選択候補ですが、これを選べばあとは自動的にコードが生成されます。

コードはプロジェクトフォルダーの “runtime” サブフォルダーに生成されます。

“csproj” ファイルを開くと、Composer v1.0.2 では Bot Builder SDK v4.9 対応のコードを生成しているようです。
Bot Buider SDK のバージョンが上がったら、きっと少しだけ遅れて Composer が対応するんでしょう。


ここまで出来ているから、実行も簡単。
警告表示は出てきますが .NET Core 3.1 で、

dotnet run --project <プロジェクト名>

を実行するだけ。
ローカルの 3979 番ポートで Web アプリが動いています。


当然ながら、Bot Framework Emulator で動作が確認できます。


(今のところ)Composer からソースコード生成の一方向のみ可能なので、例えば、

  • 不具合が発生した時にソースコードをたどってみる、開発は Composer で継続
  • プロトタイムなどの初期は Composer で開発して、どこかのタイミングで C# での開発に移行する

などの使い方が想定されます。

それとは別に、C# のコード生成でうれしいのは、個人的にはテストコードの自動生成かなと思っています。
と言っても、テストコードのスケルトンだけなので、実際のコードは自分で書く必要があります。
でも、ひな形があるだけで Bot の自動テストをちゃんとやろうという動機付けになりますよね、きっと。


C# コードを生成する機能は、preview の頃の Composer にはありました。
de:code 2020 のセッションで「C# のソースコードを生成する機能」としっかり説明しているんですが、実は preview の情報でセッションを構成したため。
(言い訳・・・Composer の GA が登壇の連絡の直前、資料の締め切りまで4日、しかも 2つのテーマをまとめて 1セッションというオーダーという条件が重なってしまい、バタバタとセッションの整理をして GA でのコード生成のあたりは確認してませんでした・・・)

GA のタイミングでこの機能はいったんなくなったんですが、 v1.0.2 ではれて復活。めでたし、めでたし。

なお de:code 2020 の資料は、これを書いている時点ではいったんクローズされていますが、そのうちパブリックな形で改めて公開されるはず。

de:code 2020 の 資料動画 が公開されています。ハンズオン資料 も公開しています。
本稿と合わせて、Bot Framework Composer をお楽しみください!

コメントを残す

以下に詳細を記入するか、アイコンをクリックしてログインしてください。

WordPress.com ロゴ

WordPress.com アカウントを使ってコメントしています。 ログアウト /  変更 )

Google フォト

Google アカウントを使ってコメントしています。 ログアウト /  変更 )

Twitter 画像

Twitter アカウントを使ってコメントしています。 ログアウト /  変更 )

Facebook の写真

Facebook アカウントを使ってコメントしています。 ログアウト /  変更 )

%s と連携中