Null botid - Microsoft Bot Framework SDK Vz
Null botId - Microsoft Bot Framework SDK V3
我正尝试在本地 运行 EchoBot example of the MS Bot Framework, following the updates to SDK V3,但无法创建对话框。
在调用
Conversation.SendAsync(activity, () => EchoChainDialog.dialog);
我得到的错误是
System.ArgumentNullException occurred
HResult=-2147467261
Message=Value cannot be null.
Parameter name: botId
ParamName=botId
Source=Microsoft.Bot.Builder
StackTrace:
at Microsoft.Bot.Builder.Internals.Fibers.SetField.CheckNull[T](String name, T value)
InnerException:
我想知道 null botID 是什么意思。在 Getting Started tutorial 之后,我 运行 在本地安装应用程序。它说不需要为机器人提供 AppID,我很确定 AppId 和 botId 不是一回事。我似乎找不到太多关于这个 botId 字段是什么的文档。
还有其他人遇到过这个问题吗?注册机器人并提供 AppId 是解决此问题的唯一方法吗?
显然你可以做到
ConfigurationManager.AppSettings["BotId"] = "test";
它会起作用的。我不确定应该如何设置 "BotId" 字段,但是如果您 运行 遇到这个问题并且只需要在本地进行测试,请在 MessagesController.cs
调用之前添加此行Conversation.SendAsync
是一种解决方法。
需要在web.config或app.config
<appSettings>
<add key="BotId" value="[Your Id]" />
<add key="MicrosoftAppId" value="[The app id]" />
<add key="MicrosoftAppPassword" value="[The client secret]" />
</appSettings>
BotBuilder 中的 autofac 魔法从那里拾取它,仅 从那里拾取它。
因为想使用新的json风格的配置,所以尝试了其他方式的设置,但是至今没有成功。我想一定有某种方法,可以实现我尝试过的 IBotIdResolver,但它似乎需要更多的定制,我无法让对话 class 选择我的实现。
我正尝试在本地 运行 EchoBot example of the MS Bot Framework, following the updates to SDK V3,但无法创建对话框。
在调用
Conversation.SendAsync(activity, () => EchoChainDialog.dialog);
我得到的错误是
System.ArgumentNullException occurred
HResult=-2147467261
Message=Value cannot be null.
Parameter name: botId
ParamName=botId
Source=Microsoft.Bot.Builder
StackTrace:
at Microsoft.Bot.Builder.Internals.Fibers.SetField.CheckNull[T](String name, T value)
InnerException:
我想知道 null botID 是什么意思。在 Getting Started tutorial 之后,我 运行 在本地安装应用程序。它说不需要为机器人提供 AppID,我很确定 AppId 和 botId 不是一回事。我似乎找不到太多关于这个 botId 字段是什么的文档。
还有其他人遇到过这个问题吗?注册机器人并提供 AppId 是解决此问题的唯一方法吗?
显然你可以做到
ConfigurationManager.AppSettings["BotId"] = "test";
它会起作用的。我不确定应该如何设置 "BotId" 字段,但是如果您 运行 遇到这个问题并且只需要在本地进行测试,请在 MessagesController.cs
调用之前添加此行Conversation.SendAsync
是一种解决方法。
需要在web.config或app.config
<appSettings>
<add key="BotId" value="[Your Id]" />
<add key="MicrosoftAppId" value="[The app id]" />
<add key="MicrosoftAppPassword" value="[The client secret]" />
</appSettings>
BotBuilder 中的 autofac 魔法从那里拾取它,仅 从那里拾取它。
因为想使用新的json风格的配置,所以尝试了其他方式的设置,但是至今没有成功。我想一定有某种方法,可以实现我尝试过的 IBotIdResolver,但它似乎需要更多的定制,我无法让对话 class 选择我的实现。