Inherits System.Web.UI.Page
Dim _request As WebRequest
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
AddOnPreRenderCompleteAsync(New
BeginEventHandler(AddressOf BeginAsyncOperation), New
EndEventHandler(AddressOf EndAsyncOperation))
Me.lblUrl.Text = Me.txtUrl.Text
End Sub
Function
BeginAsyncOperation(ByVal sender As Object, ByVal e As EventArgs, ByVal
cb As AsyncCallback, ByVal state As Object) As IAsyncResult
_request = WebRequest.Create(Me.txtUrl.Text.Trim())
Return _request.BeginGetResponse(cb, state)
End Function 'BeginAsyncOperation
Sub EndAsyncOperation(ByVal ar As IAsyncResult)
Dim [text] As String
Dim response As WebResponse = _request.EndGetResponse(ar)
Try
Dim reader As New StreamReader(response.GetResponseStream())
Try
[text] = reader.ReadToEnd()
Finally
reader.Dispose()
End Try
Finally
response.Close()
End Try
Dim regex As New Regex("href\s*=\s*""([^""]*)""", RegexOptions.IgnoreCase)
Dim matches As MatchCollection = regex.Matches([text])
Dim builder As New System.Text.StringBuilder(1024)
Dim match As Match
For Each match In matches
builder.Append(match.Groups(1))
builder.Append("<br>")
Next match
Output.Text = builder.ToString()
End Sub 'EndAsyncOperation
Protected Overrides Sub Finalize()
MyBase.Finalize()
End Sub
Public Sub New()
End Sub
Protected Sub btnSubmit_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btnSubmit.Click
AddOnPreRenderCompleteAsync(New
BeginEventHandler(AddressOf BeginAsyncOperation), New
EndEventHandler(AddressOf EndAsyncOperation))
End Sub
End Class