在WebRequesting的回调函数中获取Url

时间:2011-01-10 21:12:43

标签: c# httpwebrequest

假设我有一个网络请求:

WebRequest webRequest = WebRequest.Create(Url);
webRequest.BeginGetResponse(this.RespCallback, webRequest);

现在有办法在

中检索网址
private void RespCallback(IAsyncResult asynchronousResult)
{ 
    // here 
}

我的想法是,我想在做网页请求时在网址中提供一个序列ID,然后在回调中检索它并匹配它以知道此回调来自该请求。

有什么想法吗?

2 个答案:

答案 0 :(得分:0)

由于您将WebRequest作为“状态”传递给BeginXXX校准,因此您可以通过访问RespCallback中的IAsyncResult的AsyncState属性来回调它。获取WebRequest的URL。

var wr = asynchronousResult.AsyncState as WebRequest.

答案 1 :(得分:0)

这应该有效:

private void RespCallback(IAsyncResult asynchronousResult)
{ 
    WebRequest wreq = asynchronousResult as WebRequest;
    Uri wreqUri = wreq.RequestUri;
}