DownloadStringComplete没有设置参数?

时间:2015-10-01 18:36:11

标签: silverlight webclient silverlight-5.0

通常我可以在这里找到问题的答案,但不是这次,所以我会尝试提问。问题:尝试在Silverlight 5.0中使用DownloadStringAsync。我使用以下方式拨打电话:

System.Net.WebClient wc = new System.Net.WebClient();
wc.DownloadProgressChanged += wc_DownloadProgressChanged;
wc.DownloadStringCompleted += wc_DownloadStringComplete;
wc.AllowReadStreamBuffering = true;
wc.DownloadStringAsync(new Uri(baseURI));

(顺便说一句,这是在公共MainPage例程中,因此它在加载应用程序时运行)。

调用我的wc_DownloadProgressChanged函数完全没有问题,并报告已收到153个字节。 (这是正确的,我已经检查了使用Wireshark到达的数据包,数据到达并且ACK按预期发送。)

然而wc_DownloadStringComplete函数,就像这样开始:

void wc_DownloadStringComplete
   (object sender,
    System.Net.DownloadStringCompletedEventArgs e)
    {
        MessageBoxResult res;
        try
        {
            if (e.Error == null && e.Result != null)
            {
                ....
            }

始终生成错误,执行会进入catch块。任何访问DownloadStringCompletedEventArgs e变量的尝试都会导致错误:Unhandled Error in Silverlight Application Object reference not set to an instance of an object at CircuitTheory.MainPage.wc_DownloadStringComplete(Object sender, DownloadStringCompletedEventArgs e).

我认为系统正在调用我的wc_DownloadStringComplete函数而未设置DownloadStringCompletedEventArgs参数e。但这不可能,不是吗?

任何想法我可能正在做什么/理解错误?如果e未设置为任何内容,如何获取收到的数据?

0 个答案:

没有答案