Attendre HttpWebRequest.BeginGetResponse pour finir dans Windows Phone 7

Je suis en train d'utiliser l'async HttpWebRequest dans Silverlight pour Windows Phone. Tout fonctionne parfaitement jusqu'à ce que j'arrive à l'endroit où je devrais l'appeler

private static ManualResetEvent allDone = new ManualResetEvent(false);
...
request.BeginGetResponse(new AsyncCallback(GetResponseCallback), request);
allDone.WaitOne();
Debug.WriteLine("All done!");

Dans GetResponseCallback:

private void GetResponseCallback(IAsyncResult asynchronousResult)
{
    try
    {
        request = (HttpWebRequest)asynchronousResult.AsyncState;
        response = (HttpWebResponse)request.EndGetResponse(asynchronousResult);
        allDone.Set();
    }
    catch (Exception e)
    {
        Debug.WriteLine("Got Exception in GetResponseCallback: " + e.Message);
    }
}

Après l'appel à allDone.WaitOne(); se bloque...

Toutes les suggestions sur les pourquoi?

Ce thread est-ce?
C'est dans le thread principal

OriginalL'auteur greve | 2010-10-28