Microsoft Translator API使用控制台但不在MVC中工作

时间:2017-08-16 19:53:40

标签: c# controller console-application microsoft-translator

我已经能够使用Microsoft Translator API来创建控制台项目。我只能找到使用控制台项目的例子。

当试图在控制器中使用Translator API时,我没有任何运气。我使用相同的代码。

我是否需要添加其他类型的引用以使转换器在MVC中使用?

public async Task<string> GetAuthenticationToken(string key)

{
  string endpoint = "https://api.cognitive.microsoft.com/sts/v1.0/issueToken";

 using (var client = new HttpClient())
 {
    client.DefaultRequestHeaders.Add("Ocp-Apim-Subscription-Key", "xxxxxxxxxxxxxxx501b7b1ce");
    var response = await client.PostAsync(endpoint, null);
    var token = await response.Content.ReadAsStringAsync();
    return token;
  }
}

Error Message

2 个答案:

答案 0 :(得分:0)

是否有任何特殊原因需要先创建控制台应用程序然后再运行它?

我建议不要从MVC项目中运行可执行文件,而是调用TranslatorAsync()函数。

我的猜测是process.Start()和process.Close()调用在它有机会做任何事情之前杀死进程。但是,如果没有更多关于功能失败的细节,很难给出更好的答案。

答案 1 :(得分:0)

我不得不改变

TranslateAsync(productTest,getUserName).Wait;

等待TranslateAsync(productTest,getUserName);

现在正在运作。