Dns.EndResolve Method (IAsyncResult)

 
Note: This API is now obsolete.

Ends an asynchronous request for DNS information.

Namespace:   System.Net
Assembly:  System (in System.dll)

<ObsoleteAttribute("EndResolve is obsoleted for this type, please use EndGetHostEntry instead. http://go.microsoft.com/fwlink/?linkid=14202")>
Public Shared Function EndResolve (
	asyncResult As IAsyncResult
) As IPHostEntry

Parameters

asyncResult
Type: System.IAsyncResult

An IAsyncResult instance that is returned by a call to the BeginResolve method.

Return Value

Type: System.Net.IPHostEntry

An IPHostEntry object that contains DNS information about a host.

Exception Condition
ArgumentNullException

asyncResult is null.

This method blocks until the operation is complete.

If the Ipv6Element.Enabled is set to true, the Aliases property of the IPHostEntry instance returned is not populated by this method and will always be empty.

To perform this operation synchronously, use the Resolve method.

System_CAPS_noteNote

This member emits trace information when you enable network tracing in your application. For more information, see Network Tracing in the .NET Framework.

The following example ends an asynchronous request for DNS host information.

Class DnsBeginGetHostByName

    Class RequestState
        Public host As IPHostEntry

        Public Sub New()
            host = Nothing
        End Sub 'NewNew
    End Class 'RequestState


    Public Shared Sub Main()
     Try
        ' Create an instance of the RequestState class.
        Dim myRequestState As New RequestState()

        ' Begin an asynchronous request for information such as the host name, IP addresses, 
        ' or aliases for the specified URI.
        Dim asyncResult As IAsyncResult = CType(Dns.BeginResolve("www.contoso.com", AddressOf RespCallback, myRequestState),IAsyncResult)

        ' Wait until asynchronous call completes.
        While asyncResult.IsCompleted <> True
        End While

        Console.WriteLine(("Host name : " + myRequestState.host.HostName))
        Console.WriteLine(ControlChars.Cr + "IP address list : ")
        Dim index As Integer
        For index = 0 To myRequestState.host.AddressList.Length - 1
            Console.WriteLine(myRequestState.host.AddressList(index))
        Next index
        Console.WriteLine(ControlChars.Cr + "Aliases : ")

        For index = 0 To myRequestState.host.Aliases.Length - 1
            Console.WriteLine(myRequestState.host.Aliases(index))
        Next index
    catch e as Exception
            Console.WriteLine("Exception caught!!!")
            Console.WriteLine(("Source : " + e.Source))
            Console.WriteLine(("Message : " + e.Message))
    End Try
    End Sub 'Main


    Private Shared Sub RespCallback(ar As IAsyncResult)
        Try
            ' Convert the IAsyncResult object to a RequestState object.
            Dim tempRequestState As RequestState = CType(ar.AsyncState, RequestState)

            ' End the asynchronous request.
            tempRequestState.host = Dns.EndResolve(ar)
            Catch e As ArgumentNullException
            Console.WriteLine("ArgumentNullException caught!!!")
            Console.WriteLine(("Source : " + e.Source))
            Console.WriteLine(("Message : " + e.Message))
            Catch e As Exception
            Console.WriteLine("Exception caught!!!")
            Console.WriteLine(("Source : " + e.Source))
            Console.WriteLine(("Message : " + e.Message))
        End Try
    End Sub 'RespCallback

.NET Framework
Available since 1.1
Return to top
Show: