1

J'ai couru le code ci-dessous à la fois VS2010 et VS2012, mais VS2012 ne renvoie que la réponse. Puis j'ai cherché et trouvé, doit activer l'asynchrone et attendre dans VS2010.
Ensuite, en utilisant la référence dll AsyncCtpLibrary, je l'ai activé. Mais encore vs2010 ne renvoie pas la réponse.Async, Attendez dans le studio visuel 2010

static void Main(string[] args) 
{ 
Task<string> task = GetCustomerDetails(); //PushCustomerDetails(); 
task.Wait(); 
var x = task.Result; 
} 

    static async Task<string> GetCustomerDetails() 
    { 
     var httpClientHandler = new HttpClientHandler() 
     { 
      Credentials=new NetworkCredential("demo","demo"), 
     }; 

     var httpClient = new HttpClient(httpClientHandler); 
     httpClient.DefaultRequestHeaders.Accept.Clear(); 
     httpClient.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json")); 
     var result1 = await httpClient.GetStringAsync("URL") 
     return result1.ToString(); 
    } 
+2

Quelle que soit la raison pour laquelle vous ne pouvez pas mettre à jour vers une version plus récente de Visual Studio? VS2010 est vraiment * très * vieux ... –

Répondre

6

Le compilateur VS2010 n'a pas connaissance de async/await. Vous devez installer le CTP Async afin de mettre à jour VS2010 avec un compilateur plus récent.

Malheureusement, il y a 7 ans, la technologie d'installation de Visual Studio était loin derrière où elle est aujourd'hui. Le programme d'installation Async CTP fonctionnait comme une mise à jour VS, il se brisait donc chaque fois qu'une nouvelle mise à jour VS était publiée. L'équipe asynchrone devra alors libérer un autre programme d'installation pour que le CTP Async fonctionne à nouveau. Autant que je sache, ce cycle n'a jamais été terminé et le dernier VS2010 reste incompatible avec le CTP Async. Ainsi, il n'est plus possible de construire une machine de construction VS2010-avec-async.

+2

En d'autres termes: le temps de mettre à niveau! Voici votre preuve pour votre patron :-) –

+0

Merci pour votre réponse ... – Vengat