Microsoft Bot Framework System.ArgumentException:'EncryptedText格式不正确'

时间:2018-09-28 20:46:06

标签: c# .net botframework

我正在使用最新的bot框架更新。我有两个问题。

  1. 我好奇的第一件事是在初始设置时,我已按照README.md的要求将botFilePath和botFileSecret输入到appsettings.json中。一旦我尝试在本地运行它,似乎无法从appsettings.json中读取。我研究了Configuration类变量,但无法弄清楚为什么它不能从我输入的键中获取值。 这是代码段-我已经从https://github.com/Microsoft/BotBuilder-Samples/blob/master/samples/csharp_dotnetcore/05.multi-turn-prompt/Startup.cs

    复制了代码
    public void ConfigureServices(IServiceCollection services)
    {
        services.AddBot<MultiTurnPromptsBot>(options =>
        {
            var secretKey = Configuration.GetSection("botFileSecret")?.Value;
            var botFilePath = Configuration.GetSection("botFilePath")?.Value;
    
            // Loads .bot configuration file and adds a singleton that your Bot can access through dependency injection.
            var botConfig = BotConfiguration.Load(botFilePath, secretKey);
    

并且在BotConfiguration.Load(...) because botFilePath is null (NullException error).失败

  1. 如果我尝试将我的appsettings.json文件中的secretKeybotFilePath的值硬编码到机器人代码中,则会收到一个新错误:

System.ArgumentException: 'EncryptedText is not properly formatted'在同一位置失败。我已经从Azure门户的应用程序设置下找到了我的秘密代码...我找不到有关ArgumentException错误的任何信息。 有人有什么建议吗?

1 个答案:

答案 0 :(得分:6)

通过将.bot文件的挂锁设置为空字符串来解决第二个问题。