DownloadStringCompleted事件不会触发

时间:2012-06-14 09:01:12

标签: windows-phone-7 webclient

我正在开发一个Windows Phone应用程序。 webclient没有像我预期的那样开火。相关代码如下:

public PArticle(PocketListItem aPli)
    {
        this.pli = aPli;

        using (IsolatedStorageFile isf = IsolatedStorageFile.GetUserStoreForApplication())
        {
            if (!isf.FileExists(aPli.ID + ".json"))
            {
                WebClient client = new WebClient();
                client.DownloadStringCompleted += new DownloadStringCompletedEventHandler(client_DownloadStringCompleted);
                client.DownloadStringAsync(new Uri(pli.Url));
            }
            else
            {
                string json = RetrieveDataFromLocalStorage(aPli.ID + ".json");

                PocketArticle pa = JsonConvert.DeserializeObject<PocketArticle>(json);
                this.text = pa.text;
            }
        }
    }

    void client_DownloadStringCompleted(object sender, DownloadStringCompletedEventArgs e)
    {
        var readability = Readability.Create(e.Result);
        this.text = readability.Content;
    }

我知道这是同步/异步问题。但我不知道如何处理它。

提前致谢。

1 个答案:

答案 0 :(得分:0)

我使用2个不同的网址http://riktamtech.comhttp://google.com测试了代码的WebClient部分。在这两种情况下,都会引发DownloadStringCompleted事件。我通过设置一个断点来观察它。

所以我建议你再用断点进行测试。