Sdílet prostřednictvím


Dns.GetHostEntryAsync Metoda

Definice

Přeloží název hostitele nebo IP adresu na IPHostEntry instanci jako asynchronní operaci.

Přetížení

Name Description
GetHostEntryAsync(IPAddress)

Přeloží IP adresu na IPHostEntry instanci jako asynchronní operaci.

GetHostEntryAsync(String)

Přeloží název hostitele nebo IP adresu na IPHostEntry instanci jako asynchronní operaci.

GetHostEntryAsync(String, CancellationToken)

Přeloží název hostitele nebo IP adresu na IPHostEntry instanci jako asynchronní operaci.

GetHostEntryAsync(String, AddressFamily, CancellationToken)

Přeloží název hostitele nebo IP adresu na IPHostEntry instanci jako asynchronní operaci.

GetHostEntryAsync(IPAddress)

Zdroj:
Dns.cs
Zdroj:
Dns.cs
Zdroj:
Dns.cs
Zdroj:
Dns.cs
Zdroj:
Dns.cs

Přeloží IP adresu na IPHostEntry instanci jako asynchronní operaci.

public:
 static System::Threading::Tasks::Task<System::Net::IPHostEntry ^> ^ GetHostEntryAsync(System::Net::IPAddress ^ address);
public static System.Threading.Tasks.Task<System.Net.IPHostEntry> GetHostEntryAsync(System.Net.IPAddress address);
static member GetHostEntryAsync : System.Net.IPAddress -> System.Threading.Tasks.Task<System.Net.IPHostEntry>
Public Shared Function GetHostEntryAsync (address As IPAddress) As Task(Of IPHostEntry)

Parametry

address
IPAddress

IP adresa.

Návraty

Objekt úkolu představující asynchronní operaci. Vlastnost Result objektu úkolu vrátí IPHostEntry instanci, která obsahuje informace o adrese o hostiteli zadaném v address.

Výjimky

address je null.

Při řešení addressdošlo k chybě .

address je neplatná IP adresa.

Poznámky

Tato operace nebude blokovat. Vrácený Task<TResult> objekt se dokončí po address vyřešení.

Tato metoda dotazuje server DNS na IP adresy a aliasy přidružené k IP adrese.

Adresy IPv6 se filtrují z výsledků této metody, pokud místní počítač nemá nainstalovaný protokol IPv6. V důsledku toho je možné vrátit prázdnou IPHostEntry instanci, pokud jsou pro parametr k dispozici address pouze výsledky IPv6.

Vlastnost Aliases vrácené IPHostEntry instance není naplněna touto metodou a vždy bude prázdná.

Poznámka:

Tento člen generuje informace o trasování, když ve své aplikaci povolíte trasování sítě. Další informace naleznete v tématu Trasování sítě v rozhraní .NET Framework.

Tato metoda ukládá do úlohy všechny výjimky bez použití, které může vyvolat synchronní protějšek metody. Pokud je výjimka uložena do vrácené úlohy, tato výjimka bude vyvolána, když je úkol očekáván. Výjimky použití, například ArgumentException, jsou stále vyvolány synchronně. V případě uložených výjimek se podívejte na výjimky vyvolané GetHostEntry(IPAddress).

Platí pro

GetHostEntryAsync(String)

Zdroj:
Dns.cs
Zdroj:
Dns.cs
Zdroj:
Dns.cs
Zdroj:
Dns.cs
Zdroj:
Dns.cs

Přeloží název hostitele nebo IP adresu na IPHostEntry instanci jako asynchronní operaci.

public:
 static System::Threading::Tasks::Task<System::Net::IPHostEntry ^> ^ GetHostEntryAsync(System::String ^ hostNameOrAddress);
public static System.Threading.Tasks.Task<System.Net.IPHostEntry> GetHostEntryAsync(string hostNameOrAddress);
static member GetHostEntryAsync : string -> System.Threading.Tasks.Task<System.Net.IPHostEntry>
Public Shared Function GetHostEntryAsync (hostNameOrAddress As String) As Task(Of IPHostEntry)

Parametry

hostNameOrAddress
String

Název hostitele nebo IP adresa, které se mají přeložit.

Návraty

Objekt úkolu představující asynchronní operaci. Vlastnost Result objektu úkolu vrátí IPHostEntry instanci, která obsahuje informace o adrese o hostiteli zadaném v hostNameOrAddress.

Výjimky

Parametr hostNameOrAddress je null.

Délka parametru hostNameOrAddress je větší než 255 znaků.

Při řešení parametru hostNameOrAddress došlo k chybě.

Parametr hostNameOrAddress je neplatná IP adresa.

Poznámky

Tato operace nebude blokovat. Vrácený Task<TResult> objekt se dokončí po hostNameOrAddress vyřešení.

Tato metoda dotazuje server DNS na IP adresu přidruženou k názvu hostitele nebo IP adrese.

Pokud se jako argument předá hostNameOrAddress prázdný řetězec, vrátí tato metoda adresy IPv4 a IPv6 místního hostitele.

Pokud nebyl nalezen název hostitele, SocketException vrátí se výjimka s hodnotou 11001 (chyba rozhraní Windows Sockets WSAHOST_NOT_FOUND). Tuto výjimku je možné vrátit, pokud server DNS nereaguje. Tuto výjimku je možné vrátit také v případě, že název není oficiálním názvem hostitele nebo aliasem nebo ho nelze najít v dotazovaných databázích.

Výjimka ArgumentException se vrátí také v případě, že hostNameOrAddress parametr obsahuje Any nebo IPv6Any.

Tato metoda předpokládá, že pokud je v parametru hostNameOrAddress předán řetězec literálu PROTOKOLU IP, který aplikace chce IPHostEntry vrátit instanci se všemi sadami vlastností. Mezi tyto vlastnosti patří , AddressListAliasesa HostName. Výsledkem je, že implementace této metody vykazuje následující chování při předání řetězcového literálu PROTOKOLU IP:

  1. Metoda se pokusí analyzovat adresu. hostNameOrAddress Pokud parametr obsahuje literál řetězce právní IP adresy, bude první fáze úspěšná.

  2. Zpětné vyhledávání pomocí IP adresy literálu řetězce PROTOKOLU IP se pokouší získat název hostitele. Tento výsledek je nastaven jako HostName vlastnost.

  3. Název hostitele z tohoto zpětného vyhledávání se znovu použije k získání všech možných IP adres přidružených k názvu a nastavení jako AddressList vlastnosti.

U řetězcového literálu IPv4 může být všechny tři kroky uvedené výše úspěšné. Je ale možné, že zastaralý záznam DNS pro adresu IPv4, která skutečně patří jinému hostiteli, který se má vrátit. To může způsobit selhání kroku 3 a vyvolání výjimky (pro adresu IPv4 existuje záznam DNS PTR, ale žádný záznam DNS A pro adresu IPv4).

U IPv6 může krok 2 výše selhat, protože většina nasazení IPv6 neregistruje reverzní záznam (PTR) pro adresu IPv6. Proto tato metoda může vrátit řetězcový literál IPv6 jako plně kvalifikovaný název hostitele domény (FQDN) ve HostName vlastnosti.

Metoda GetHostAddresses má jiné chování s ohledem na literály PROTOKOLU IP. Pokud krok 1 výše proběhne úspěšně (úspěšně parsuje jako IP adresu), vrátí se tato adresa okamžitě jako výsledek. Při zpětném vyhledávání není žádný pokus.

Adresy IPv6 se filtrují z výsledků této metody, pokud místní počítač nemá nainstalovaný protokol IPv6. V důsledku toho je možné vrátit prázdnou IPHostEntry instanci, pokud jsou k dispozici pouze výsledky protokolu IPv6, pokud jsou k dispozici pro hostNameOrAddressparametr ..

Vlastnost Aliases vrácené IPHostEntry instance není naplněna touto metodou a vždy bude prázdná.

Tato metoda se implementuje pomocí rozhraní API pro překlad názvů základního operačního systému (například rozhraní API Win32 getaddrinfo ve Windows a ekvivalentních rozhraní API na jiných platformách). Pokud je hostitel popsaný v hosts souboru, vrátí se IP adresa nebo adresy bez dotazování na server DNS.

Poznámka:

Tento člen generuje informace o trasování, když ve své aplikaci povolíte trasování sítě. Další informace naleznete v tématu Trasování sítě v rozhraní .NET Framework.

Tato metoda ukládá do úlohy všechny výjimky bez použití, které může vyvolat synchronní protějšek metody. Pokud je výjimka uložena do vrácené úlohy, tato výjimka bude vyvolána, když je úkol očekáván. Výjimky použití, například ArgumentException, jsou stále vyvolány synchronně. V případě uložených výjimek se podívejte na výjimky vyvolané GetHostEntry(String).

Platí pro

GetHostEntryAsync(String, CancellationToken)

Zdroj:
Dns.cs
Zdroj:
Dns.cs
Zdroj:
Dns.cs
Zdroj:
Dns.cs
Zdroj:
Dns.cs

Přeloží název hostitele nebo IP adresu na IPHostEntry instanci jako asynchronní operaci.

public:
 static System::Threading::Tasks::Task<System::Net::IPHostEntry ^> ^ GetHostEntryAsync(System::String ^ hostNameOrAddress, System::Threading::CancellationToken cancellationToken);
public static System.Threading.Tasks.Task<System.Net.IPHostEntry> GetHostEntryAsync(string hostNameOrAddress, System.Threading.CancellationToken cancellationToken);
static member GetHostEntryAsync : string * System.Threading.CancellationToken -> System.Threading.Tasks.Task<System.Net.IPHostEntry>
Public Shared Function GetHostEntryAsync (hostNameOrAddress As String, cancellationToken As CancellationToken) As Task(Of IPHostEntry)

Parametry

hostNameOrAddress
String

Název hostitele nebo IP adresa, které se mají přeložit.

cancellationToken
CancellationToken

Token zrušení, který lze použít k signalizaci asynchronní operace, by se měl zrušit.

Návraty

Objekt úkolu představující asynchronní operaci. Vlastnost Result objektu úkolu vrátí IPHostEntry instanci, která obsahuje informace o adrese o hostiteli zadaném v hostNameOrAddress.

Výjimky

Token zrušení byl zrušen. Tato výjimka je uložena do vrácené úlohy.

Poznámky

Tato metoda ukládá do úlohy všechny výjimky bez použití, které může vyvolat synchronní protějšek metody. Pokud je výjimka uložena do vrácené úlohy, tato výjimka bude vyvolána, když je úkol očekáván. Výjimky použití, například ArgumentException, jsou stále vyvolány synchronně. V případě uložených výjimek se podívejte na výjimky vyvolané GetHostEntry(String).

Platí pro

GetHostEntryAsync(String, AddressFamily, CancellationToken)

Zdroj:
Dns.cs
Zdroj:
Dns.cs
Zdroj:
Dns.cs
Zdroj:
Dns.cs
Zdroj:
Dns.cs

Přeloží název hostitele nebo IP adresu na IPHostEntry instanci jako asynchronní operaci.

public static System.Threading.Tasks.Task<System.Net.IPHostEntry> GetHostEntryAsync(string hostNameOrAddress, System.Net.Sockets.AddressFamily family, System.Threading.CancellationToken cancellationToken = default);
static member GetHostEntryAsync : string * System.Net.Sockets.AddressFamily * System.Threading.CancellationToken -> System.Threading.Tasks.Task<System.Net.IPHostEntry>
Public Shared Function GetHostEntryAsync (hostNameOrAddress As String, family As AddressFamily, Optional cancellationToken As CancellationToken = Nothing) As Task(Of IPHostEntry)

Parametry

hostNameOrAddress
String

Název hostitele nebo IP adresa, které se mají přeložit.

family
AddressFamily

Řada adres, pro kterou se mají načíst IP adresy. Pokud Unspecifiednačtěte všechny IP adresy bez ohledu na rodinu adres.

cancellationToken
CancellationToken

Token zrušení, který lze použít k signalizaci asynchronní operace, by se měl zrušit.

Návraty

Objekt úkolu představující asynchronní operaci. Vlastnost Result objektu úkolu vrátí IPHostEntry instanci, která obsahuje informace o adrese o hostiteli zadaném v hostNameOrAddress.

Výjimky

Token zrušení byl zrušen. Tato výjimka je uložena do vrácené úlohy.

Poznámky

Tato metoda ukládá do úlohy všechny výjimky bez použití, které může vyvolat synchronní protějšek metody. Pokud je výjimka uložena do vrácené úlohy, tato výjimka bude vyvolána, když je úkol očekáván. Výjimky použití, například ArgumentException, jsou stále vyvolány synchronně. V případě uložených výjimek se podívejte na výjimky vyvolané GetHostEntry(String, AddressFamily).

Platí pro