C# 迁移到自定义BotState服务-清单?

C# 迁移到自定义BotState服务-清单?,c#,.net,botframework,C#,.net,Botframework,之后,即开即用的bot状态管理将被弃用,我们使用以下文档实现了我们自己的bot状态服务: 因此,我们可以将迁移过程总结为以下步骤: 安装Azure Cosmos DB,用于存储机器人状态数据 更新ConversationIoC容器,以包含DocumentDbBotDataStore注册 确保不再使用StateClient类型,因为它使用默认的开箱即用bot状态存储。使用IDialogContext中的ConversationData、PrivateCversationData和Use

之后,即开即用的bot状态管理将被弃用,我们使用以下文档实现了我们自己的bot状态服务:

因此,我们可以将迁移过程总结为以下步骤:

  • 安装Azure Cosmos DB,用于存储机器人状态数据
  • 更新
    Conversation
    IoC容器,以包含
    DocumentDbBotDataStore
    注册
  • 确保不再使用
    StateClient
    类型,因为它使用默认的开箱即用bot状态存储。使用
    IDialogContext
    中的
    ConversationData
    PrivateCversationData
    UserData
  • 在我们实现了上述步骤之后,我们可以看到bot状态数据现在正确地存储在我们自己的Cosmos数据库中。此外,Bot通道仿真器不再报告与Bot状态相关的警告


    我的问题是,我们是否需要采取其他步骤来确保不会有任何对默认不推荐的bot状态服务的幕后调用。还有什么不太明显但需要考虑的吗?

    看起来你已经涵盖了所有内容。sdk中没有“对默认不推荐的bot状态服务的幕后调用”。如果您没有使用activity.GetStateClient(),并且您已经正确地实现了IBotDataStore。你完了


    本文档介绍如何使用Microsoft.Bot.Builder.Azure中的DocumentDbBotDataStore

    您似乎已经介绍了所有内容。sdk中没有“对默认不推荐的bot状态服务的幕后调用”。如果您没有使用activity.GetStateClient(),并且已经正确实现了IBotDataStore。“你完了!”埃里克·达尔旺,谢谢你的评论。“正确实现IBotDataStore”是指在管道中注册
    DocumentDbBotDataStore
    ,如中所示?如果没有,那你能进一步解释一下你的想法吗?是的,这就是我的意思。@EricDahlvang,快速跟进这一点。我的问题中提到的步骤确实足够了——默认的BotState服务现在已被弃用,我们的Cosmos DB store在prod中工作顺利。您可以重新发布您的第一条评论作为对这个问题的回答,我将其标记为已接受。