2017-03-16 217 views
-1

與調試器中運行這行代碼HttpClient的初始化失敗

HttpClient client = new HttpClient() 

應用程序突然退出後。任何人都有一些想法,爲什麼這會出現?

這是代碼:

static void Main(string[] args) 
    { 
     Task.Run(() => translate("en", "bg", "hello").Wait()); 
    } 

static async Task translate(string sourceLang, string targetLang, string sourceText) 
{ 
    string page = "http://www.transltr.org/api/translate?text=" + 
     sourceText + "&to=" + targetLang + "&from=" + sourceLang; 

    try 
    { 
     HttpClient client = new HttpClient(); 
     HttpResponseMessage response = await client.GetAsync(page); 
     response.EnsureSuccessStatusCode(); 
     if (response.IsSuccessStatusCode) 
     { 
      string trans = await response.Content.ReadAsStringAsync(); 
      Console.WriteLine(trans); 
      Console.ReadLine(); 
     } 
    } 
    catch (Exception e) 
    { 
     Console.WriteLine(e); 
    } 
} 

而且這條線

HttpClient client = new HttpClient() 
+1

您是否有任何類型的錯誤消息,可能打印到調試控制檯?該文檔沒有提到任何例外情況:https://msdn.microsoft.com/en-us/library/hh138077(v=vs.118).aspx – chris

+2

使用'try/catch'塊並獲取'Exception'詳細信息包括類型,消息,堆棧跟蹤和內部異常詳情(如果有)。 – Igor

+0

有沒有錯誤..我嘗試使用try/catch –

回答

0
Task.Run(() => translate("en", "bg", "hello")).Wait(); 

代碼工作後停止執行,你需要等待的任務創建任務進行小的調整。運行