【问题标题】:Windows Phone WebClient Won't Update New DataWindows Phone WebClient 不会更新新数据
【发布时间】:2014-08-17 14:08:30
【问题描述】:

我有一个连接到本地 IIS 服务器的 windows phone 应用程序。它下载一些 json 数据并将其显示在列表框中。我在页面上也有一个刷新按钮。当页面加载时,一切都是正确的,但按下刷新按钮只会返回与页面加载时相同的数据。我已经用 uri 检查了我的网络浏览器,并且更新的数据在那里正确显示。此外,如果我退出 windows phone 应用程序并重新加载它,数据就在那里。这是我正在测试的一些简化代码。

页面加载时:

        WebClient download = new WebClient();
        download.DownloadStringCompleted += new DownloadStringCompletedEventHandler(download_DownloadStringCompleted);
        download.DownloadStringAsync(new Uri("http://sampledata/data"));

        void download_DownloadStringCompleted(object sender, DownloadStringCompletedEventArgs e)
        {
            MessageBox.Show(e.Result);
        }

这很好用,并显示一个带有我的 json 字符串的消息框。

刷新时:

private void Button_Click(object sender, RoutedEventArgs e)
    {
        WebClient refresh = new WebClient();
        refresh.DownloadStringCompleted += new DownloadStringCompletedEventHandler(refresh_DownloadStringCompleted);
        refresh.DownloadStringAsync(new Uri("http://sampledata/data"));
    }

    void refresh_DownloadStringCompleted(object sender, DownloadStringCompletedEventArgs e)
    {
        MessageBox.Show(e.Result);
    }

这会显示与页面加载时相同的 json 字符串,即使数据已更改。有没有人有任何想法?谢谢。

【问题讨论】:

    标签: json windows rest windows-phone


    【解决方案1】:

    尝试在 URL 末尾添加时间戳。喜欢refresh.DownloadStringAsync(new URI("http://sampledata/data" + DateTime.Now.ToString()));

    【讨论】:

      【解决方案2】:

      您从服务器提取了多少数据?如果您需要繁重的工作,请尝试使用 HttpWebRequest。我在 webclient 加载和刷新数据方面也遇到了一些问题。服务器上的每一次更改都会带来很大的延迟......

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2014-03-23
        • 1970-01-01
        • 1970-01-01
        • 2021-11-06
        • 1970-01-01
        相关资源
        最近更新 更多