Dns.GetHostEntryAsync Metoda
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Přeloží název hostitele nebo IP adresu na IPHostEntry instanci jako asynchronní operaci.
Přetížení
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
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 úlohy představující asynchronní operaci. Vlastnost Result objektu úkolu vrátí IPHostEntry instanci, která obsahuje informace o adrese hostitele zadaného v nástroji address
.
Výjimky
address
je null
.
Při řešení chyby dojde k address
chybě .
address
je neplatná IP adresa.
Poznámky
Tato operace nebude blokována. Vrácený Task<TResult> objekt se dokončí po vyřešení objektu address
.
Tato metoda se dotazuje serveru DNS na IP adresy a aliasy přidružené k IP adrese.
Adresy IPv6 jsou filtrovány z výsledků této metody, pokud místní počítač nemá nainstalovaný protokol IPv6. V důsledku toho je možné získat zpět prázdnou IPHostEntry instanci, pokud jsou pro address
parametr k dispozici pouze výsledky protokolu IPv6.
Vlastnost AliasesIPHostEntry vrácené instance není vyplněna touto metodou a bude vždy prázdná.
Poznámka
Tento člen generuje informace o trasování, když povolíte trasování sítě ve vaší aplikaci. Další informace najdete v tématu Trasování sítě v rozhraní .NET Framework.
Tato metoda ukládá do úlohy, která vrací všechny výjimky nesouvisejí s používáním, které může vyvolat synchronní protějšek metody. Pokud je ve vrácené úloze uložena výjimka, bude tato výjimka vyvolána při čekání na úkol. Výjimky použití, například ArgumentException, jsou stále vyvolány synchronně. Informace o uložených výjimkách najdete v tématu Výjimky vyvolané nástrojem GetHostEntry(IPAddress).
Platí pro
GetHostEntryAsync(String)
- 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 úlohy představující asynchronní operaci. Vlastnost Result objektu úkolu vrátí IPHostEntry instanci, která obsahuje informace o adrese hostitele zadaného v nástroji hostNameOrAddress
.
Výjimky
Parametr hostNameOrAddress
je null
.
Délka parametru hostNameOrAddress
je větší než 255 znaků.
Při řešení parametru došlo k hostNameOrAddress
chybě.
Parametr hostNameOrAddress
je neplatná IP adresa.
Poznámky
Tato operace nebude blokována. Vrácený Task<TResult> objekt se dokončí po vyřešení objektu hostNameOrAddress
.
Tato metoda se dotazuje serveru DNS na IP adresu přidruženou k názvu hostitele nebo IP adrese.
Pokud se jako hostNameOrAddress
argument předá prázdný řetězec, vrátí tato metoda adresy IPv4 a IPv6 místního hostitele.
Pokud se název hostitele nepodařilo najít, SocketException vrátí se výjimka s hodnotou 11001 (chyba Windows Sockets WSAHOST_NOT_FOUND). Tuto výjimku je možné vrátit, pokud server DNS neodpoví. Tuto výjimku lze také vrátit, pokud název není oficiální název hostitele nebo alias 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 IP, aplikace chce IPHostEntry vrátit instanci se všemi nastavenými vlastnostmi. Mezi tyto vlastnosti patří AddressList, Aliasesa HostName. V důsledku toho implementace této metody vykazuje následující chování při předání literálu řetězce PROTOKOLU IP:
Metoda se pokusí analyzovat adresu.
hostNameOrAddress
Pokud parametr obsahuje literál právního řetězce IP, první fáze bude úspěšná.Zpětné vyhledávání s použitím IP adresy řetězcového literálu IP se pokusí získat název hostitele. Tento výsledek je nastaven jako HostName vlastnost.
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 nastaví se jako AddressList vlastnost.
U řetězcového literálu IPv4 můžou být všechny tři výše uvedené kroky úspěšné. Je ale možné vrátit zastaralý záznam DNS pro adresu IPv4, která ve skutečnosti patří jinému hostiteli. To může způsobit selhání kroku č. 3 a vyvolá výjimku (pro adresu IPv4 existuje záznam PTR DNS, ale žádný záznam DNS A pro adresu IPv4).
U protokolu IPv6 může krok č. 2 výše selhat, protože většina nasazení IPv6 neregistruje reverzní záznam (PTR) pro adresu IPv6. Tato metoda tedy může vrátit řetězcový literál IPv6 jako plně kvalifikovaný název hostitele domény (FQDN) ve HostName vlastnosti.
Metoda GetHostAddresses se s ohledem na literály PROTOKOLU IP chová jinak. Pokud výše uvedený krok č. 1 proběhne úspěšně (úspěšně se parsuje jako IP adresa), vrátí se tato adresa okamžitě jako výsledek. Neexistuje žádný pokus o zpětné vyhledávání.
Adresy IPv6 jsou filtrovány z výsledků této metody, pokud místní počítač nemá nainstalovaný protokol IPv6. V důsledku toho je možné získat zpět prázdnou IPHostEntry instanci, pokud jsou pro hostNameOrAddress
parametr k dispozici pouze výsledky protokolu IPv6.
Vlastnost AliasesIPHostEntry vrácené instance není vyplněna touto metodou a bude vždy prázdná.
Tato metoda se implementuje pomocí rozhraní API pro překlad ip adres příslušné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 v hosts
souboru popsaný hostitel, ip adresa nebo adresy tam budou vráceny bez dotazování serveru DNS.
Poznámka
Tento člen generuje informace o trasování, když povolíte trasování sítě ve vaší aplikaci. Další informace najdete v tématu Trasování sítě v rozhraní .NET Framework.
Tato metoda ukládá do úlohy, která vrací všechny výjimky nesouvisejí s používáním, které může vyvolat synchronní protějšek metody. Pokud je ve vrácené úloze uložena výjimka, bude tato výjimka vyvolána při čekání na úkol. Výjimky použití, například ArgumentException, jsou stále vyvolány synchronně. Informace o uložených výjimkách najdete v tématu Výjimky vyvolané nástrojem GetHostEntry(String).
Platí pro
GetHostEntryAsync(String, CancellationToken)
- 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 úlohy představující asynchronní operaci. Vlastnost Result objektu úkolu vrátí IPHostEntry instanci, která obsahuje informace o adrese hostitele zadané v hostNameOrAddress
nástroji .
Výjimky
Token zrušení byl zrušen. Tato výjimka je uložena ve vrácené úloze.
Poznámky
Tato metoda ukládá do úlohy, která vrací všechny výjimky nesouvisejí s používáním, které může vyvolat synchronní protějšek metody. Pokud je ve vrácené úloze uložena výjimka, bude tato výjimka vyvolána při čekání na úkol. Výjimky použití, například ArgumentException, jsou stále vyvolány synchronně. Informace o uložených výjimkách najdete v tématu Výjimky vyvolané nástrojem GetHostEntry(String).
Platí pro
GetHostEntryAsync(String, AddressFamily, CancellationToken)
- 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
Rodina adres, pro kterou se mají načíst IP adresy. Pokud Unspecified, nač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 úlohy představující asynchronní operaci. Vlastnost Result objektu úkolu vrátí IPHostEntry instanci, která obsahuje informace o adrese hostitele zadaného v hostNameOrAddress
.
Výjimky
Token zrušení byl zrušen. Tato výjimka je uložena ve vrácené úloze.
Poznámky
Tato metoda ukládá do úlohy, která vrací všechny výjimky nesouvisejí s používáním, které může vyvolat synchronní protějšek metody. Pokud je ve vrácené úloze uložena výjimka, bude tato výjimka vyvolána při čekání na úkol. Výjimky použití, například ArgumentException, jsou stále vyvolány synchronně. Informace o uložených výjimkách najdete v tématu Výjimky vyvolané nástrojem GetHostEntry(String, AddressFamily).