2017-03-22 5 views
1

数週間で廃止されるLUISエンドポイントのため、私たちのボット用のBot Builder SDKを3.5.0から3.5.5にアップグレードしています。最新のSDKバージョンでは 'LuisApiVersion'を指定する方法があるようです。BotStore SDK 3.5.5でConnectorStoreが変更されていますか?

例外がスローさ:

'Autofac.Core.Registration.ComponentNotRegisteredException' をautofac.dllにCachingBotDataStoreConsistencyPolicyためLastWriteWinsポリシーを使用するように動作を変更しながら、アップグレード中

、私は次のエラーを取得しています

追加情報:要求されたサービス 'Microsoft.Bot.Builder.Dialogs.Internals.ConnectorStore'は登録されていません。この例外を回避するには、サービスを提供するコンポーネントを登録するか、IsRegistered()を使用してサービス登録を確認するか、ResolveOptional()メソッドを使用してオプションの依存関係を解決します。

 builder.Register(c => new CachingBotDataStore(c.Resolve<ConnectorStore>(), 
      CachingBotDataStoreConsistencyPolicy.LastWriteWins) 
      .As<IBotDataStore<BotData>>()       
      .AsSelf() 
      .InstancePerLifetimeScope(); 

このコードは、3.5.0のために働いたが、私たちは3.5.5となっているAutofacのエラーを処理するための最良の方法だかわからないんだけど。これに関するあらゆる指針またはアイデア?

答えて

3

hereのように、ConnectorStoreの登録が変更されました。

問題を解決するには、コード内のc.Resolve<ConnectorStore>()c.ResolveKeyed<IBotDataStore<BotData>>(typeof(ConnectorStore))

に変更する必要があります。
関連する問題