0

DownloadStringAsync の後に DownloadStringCompletedEventHandler で URL を取得するにはどうすればよいですか?

できるだけ早くたくさんの URL を読み込もうとしています。Web クライアントのセットを使用することを考えていますが、イベント ハンドルで URL を識別する必要があります。返された html コードを処理する唯一の方法です。

4

1 に答える 1

1

DownLoadStringAsync を呼び出すときにユーザー状態を追加します。あまりお勧めできないもう 1 つの方法は、WebClient に反映して内部フィールド m_WebRequest を取得することです。そのオブジェクトは元の URL を保持しますが、フレームワークの新しいバージョンでは失敗する可能性があります。

    var wc = new WebClient();

    wc.DownloadStringCompleted += (sender, e) => 
    { 
        WebClient compWC = (WebClient) sender;
        string url = e.UserState as string;
        Console.WriteLine(compWC.ResponseHeaders[HttpResponseHeader.Server]);
        Console.WriteLine(url);
    };                

    wc.DownloadStringAsync(new Uri("http://www.google.nl"), "http://www.google.nl");
于 2012-12-29T15:01:17.423 に答える