Azure Bot Serviceで構築したBotをエミュレータでテストすると”System.MissingMethodException: ‘Method not found: ‘Void Microsoft.Bot.Connector.Authentication.PasswordServiceClientCredentialFactory”エラーが出る

こんばんは。この記事ではAzure Bot Serviceに関するトラブルシューティングメモです。

さっそくまいります。

問題

Azure Bot Serviceで構築したボットにApplication Insightsを構成しようとパッケージ(Microsoft.Bot.Builder.Integration.ApplicationInsights.Core)を追加したところ、ビルドは通るのですがアプリ起動時に以下のエラーが出てしまいました。

System.MissingMethodException: 'Method not found: 'Void Microsoft.Bot.Connector.Authentication.PasswordServiceClientCredentialFactory
...

Bot Emulator側でも400エラーが返る状況に。

原因と解決方法

こちらのStack Overflowが参考になりました。

https://stackoverflow.com/questions/57169629/system-missingmethodexception-method-not-found-void-microsoft-aspnetcore-mvc

パッケージ間の互換性があっていないから、とのこと。

私の場合は、Microsoft.Bot.Builder.Integration.ApplicationInsights.Coreをバージョン4.16.0でインストールしたのに、関連するMicrosoft.Bot.Builder.DialogsとMicrosoft.Bot.Builder.Integration.AspNet.Coreのバージョンが4.14.x系で互換していないことが原因のようでした。

これら2つのバージョンをあげることで、エラーが解消しました!

あせった・・・けどエラー内容からはなかなか想像つかない原因でした・・Stack Overflowの議論に感謝。

同じ問題で詰まった方の参考になりましたら幸いです。

おしまい

この記事を気に入っていただけたらシェアをお願いします!

コメントを残す

メールアドレスが公開されることはありません。

ABOUT US
Yuu113
初めまして。ゆうたろうと申します。 兵庫県出身、東京でシステムエンジニアをしております。現在は主にデータ分析、機械学習を活用してビジネスモデリングに取り組んでいます。 日々学んだことや経験したことを整理していきたいと思い、ブログを始めました。旅行、カメラ、IT技術、江戸文化が大好きですので、これらについても記事にしていきたいと思っています。