2016-11-22 121 views
3

我正在开发一个Microsoft Bot项目,它将返回指定的货币汇率(与NZD相比)。
E.G.用户:aud
Bot:1.18通过API返回汇率Microsoft Bot Framework

我遇到的问题是代码没有打印出任何东西(即使连接正在工作)。
下面是一些代码,我有:

  double aud = rootObject.rates.AUD; 
      double inr = rootObject.rates.INR; 
      double jpy = rootObject.rates.JPY; 
      double eur = rootObject.rates.EUR; 
      double gbp = rootObject.rates.GBP; 

      string[] array = new string[] 
       {"aud", "inr", "jpy", "eur", "gbp"}; 

      foreach(string i in array) 
      { 
       if (ActivityTypes.Message == i) 
       { 
        // return our reply to the user 
        Activity reply = activity.CreateReply($"{i}"); 
        await connector.Conversations.ReplyToActivityAsync(reply); 
        Console.WriteLine(i); 
       } 
      } 

我尝试添加一些货币的在阵列中并匹配以在arrayOf货币,即如果userInput用户输入,返回currencyRateOfUserInput(抱歉,我无法弄清楚如何格式化)

我很新的C#所以我不知道有多少事情的工作,任何帮助如何解决这个问题?我最后的手段是每种货币都有一个if语句。 P.S原谅我的任何格式错误左右,第一次问SO

在此先感谢!

+0

你能后的完整代码?当前的代码是在控制器还是在对话框中发生? –

回答

0

如果没有一个完整的代码发布,很难看到你正在试图做...

//if (ActivityTypes.Message == i) 

如果我在读你的代码正确你是比较数组的值(“澳元”等)到ActivityTypes.Message的枚举值。因此你的代码在if语句中不会执行。

所以使你的代码中的一些假设,试图改变上述线以下:

if (activity.Text == i) 

如果这项工作,记住一定要对文化和小写等

相关问题