Comment dois-je attendre jusqu'à ce que la Tâche est terminée en C#?

Je veux envoyer une requête à un serveur et des processus la valeur retournée:

private static string Send(int id)
{
    Task<HttpResponseMessage> responseTask = client.GetAsync("aaaaa");
    string result = string.Empty;
    responseTask.ContinueWith(x => result = Print(x));
    responseTask.Wait(); //it doesn't wait for the completion of the response task
    return result;
}

private static string Print(Task<HttpResponseMessage> httpTask)
{
    Task<string> task = httpTask.Result.Content.ReadAsStringAsync();
    string result = string.Empty;
    task.ContinueWith(t =>
    {
        Console.WriteLine("Result: " + t.Result);
        result = t.Result;
    });
    task.Wait();  //it does wait
    return result;
}

Suis-je à l'aide de Task correctement? Je ne le pense pas parce que le Send() méthode renvoie string.Empty à chaque fois, alors que Print renvoie la valeur correcte.

Ce que je fais mal? Comment puis-je obtenir le résultat correct à partir d'un serveur?

InformationsquelleAutor | 2012-11-03