我已经能够使用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;
}
}
答案 0 :(得分:0)
是否有任何特殊原因需要先创建控制台应用程序然后再运行它?
我建议不要从MVC项目中运行可执行文件,而是调用TranslatorAsync()函数。
我的猜测是process.Start()和process.Close()调用在它有机会做任何事情之前杀死进程。但是,如果没有更多关于功能失败的细节,很难给出更好的答案。
答案 1 :(得分:0)
我不得不改变
TranslateAsync(productTest,getUserName).Wait;
到
等待TranslateAsync(productTest,getUserName);
现在正在运作。