代码之家  ›  专栏  ›  技术社区  ›  Palantir

是否将已完成的事件与原始WebClient关联?

  •  1
  • Palantir  · 技术社区  · 15 年前

    我在silverlight用这个,你介意吗。

    谢谢 真知晶球

    2 回复  |  直到 15 年前
        1
  •  2
  •   AnthonyWJones    15 年前

    因此,您可以简单地通过强制转换来关联用于生成请求的WebClient实例 sender 返回到的事件的参数 WebClient .

    object 用户令牌。此userToken是在调用后发生的任何后续事件中传递的。可以在参数中传递任何喜欢的对象。因此,如果您有某个对象的其他实例或某个ID值要用于关联该调用,则可以使用此参数。

     WebClient wc = new WebClient();
     wc.DownloadStringCompleted += Handle_DownloadStringCompleted;
     wc.DownloadString(myUri, myUri);
    

     void Handle_DownloadStringCompleted(object sender, DownloadStringCompletedEventArgs e)
     {
        if (!e.Canceled)
        {
            Uri originalUri = (Uri)e.UserState;
            // Do stuff with the Uri.
        }
     }
    
        2
  •  0
  •   Luke Foust    15 年前

    这是性能的折衷,但您可以使用WebClient类的不同实例,在这种情况下,您可以将响应关联回触发请求的WebClient的原始实例。