Bagikan melalui


Dns.GetHostEntryAsync Metode

Definisi

Menyelesaikan nama host atau alamat IP ke IPHostEntry instans sebagai operasi asinkron.

Overload

GetHostEntryAsync(IPAddress)

Menyelesaikan alamat IP ke IPHostEntry instans sebagai operasi asinkron.

GetHostEntryAsync(String)

Menyelesaikan nama host atau alamat IP ke IPHostEntry instans sebagai operasi asinkron.

GetHostEntryAsync(String, CancellationToken)

Menyelesaikan nama host atau alamat IP ke IPHostEntry instans sebagai operasi asinkron.

GetHostEntryAsync(String, AddressFamily, CancellationToken)

Menyelesaikan nama host atau alamat IP ke IPHostEntry instans sebagai operasi asinkron.

GetHostEntryAsync(IPAddress)

Sumber:
Dns.cs
Sumber:
Dns.cs
Sumber:
Dns.cs

Menyelesaikan alamat IP ke IPHostEntry instans sebagai operasi asinkron.

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)

Parameter

address
IPAddress

Alamat IP.

Mengembalikan

Objek tugas yang mewakili operasi asinkron. Properti Result pada objek tugas mengembalikan instans IPHostEntry yang berisi informasi alamat tentang host yang ditentukan dalam address.

Pengecualian

addressadalah null.

Terjadi kesalahan saat menyelesaikan address.

address adalah alamat IP yang tidak valid.

Keterangan

Operasi ini tidak akan memblokir. Objek yang dikembalikan Task<TResult> akan selesai setelah address diselesaikan.

Metode ini meminta server DNS untuk alamat IP dan alias yang terkait dengan alamat IP.

Alamat IPv6 difilter dari hasil metode ini jika komputer lokal tidak menginstal IPv6. Akibatnya, dimungkinkan untuk mendapatkan kembali instans kosong IPHostEntry jika hanya hasil IPv6 jika tersedia untuk address parameter .

Properti Aliases instans yang IPHostEntry dikembalikan tidak diisi oleh metode ini dan akan selalu kosong.

Catatan

Anggota ini memancarkan informasi pelacakan saat Anda mengaktifkan pelacakan jaringan di aplikasi Anda. Untuk informasi selengkapnya, lihat Pelacakan Jaringan di .NET Framework.

Metode ini disimpan dalam tugas yang menampilkan semua pengecualian non-penggunaan yang dapat dilemparkan oleh rekan sinkron metode. Jika pengecualian disimpan ke dalam tugas yang dikembalikan, pengecualian tersebut akan dilemparkan saat tugas ditunggu. Pengecualian penggunaan, seperti ArgumentException, masih dilemparkan secara sinkron. Untuk pengecualian yang disimpan, lihat pengecualian yang dilemparkan oleh GetHostEntry(IPAddress).

Berlaku untuk

GetHostEntryAsync(String)

Sumber:
Dns.cs
Sumber:
Dns.cs
Sumber:
Dns.cs

Menyelesaikan nama host atau alamat IP ke IPHostEntry instans sebagai operasi asinkron.

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)

Parameter

hostNameOrAddress
String

Nama host atau alamat IP untuk diselesaikan.

Mengembalikan

Objek tugas yang mewakili operasi asinkron. Properti Result pada objek tugas mengembalikan instans IPHostEntry yang berisi informasi alamat tentang host yang ditentukan dalam hostNameOrAddress.

Pengecualian

Parameternya hostNameOrAddress adalah null.

Panjang hostNameOrAddress parameter lebih besar dari 255 karakter.

Terjadi kesalahan saat menyelesaikan hostNameOrAddress parameter.

Parameter hostNameOrAddress adalah alamat IP yang tidak valid.

Keterangan

Operasi ini tidak akan memblokir. Objek yang dikembalikan Task<TResult> akan selesai setelah hostNameOrAddress diselesaikan.

Metode ini meminta server DNS untuk alamat IP yang terkait dengan nama host atau alamat IP.

Jika string kosong diteruskan sebagai hostNameOrAddress argumen, maka metode ini mengembalikan alamat IPv4 dan IPv6 dari host lokal.

Jika nama host tidak dapat ditemukan, SocketException pengecualian dikembalikan dengan nilai 11001 (kesalahan Windows Sockets WSAHOST_NOT_FOUND). Pengecualian ini dapat dikembalikan jika server DNS tidak merespons. Pengecualian ini juga dapat dikembalikan jika namanya bukan nama host atau alias resmi, atau tidak dapat ditemukan dalam database yang sedang dikueri.

Pengecualian ArgumentException juga dikembalikan jika hostNameOrAddress parameter berisi Any atau IPv6Any.

Metode ini mengasumsikan bahwa jika string literal IP diteruskan dalam hostNameOrAddress parameter yang diinginkan aplikasi instans IPHostEntry yang dikembalikan dengan semua properti yang ditetapkan. Properti ini termasuk AddressList, Aliases, dan HostName. Akibatnya, implementasi metode ini menunjukkan perilaku berikut ketika string IP literal diteruskan:

  1. Metode mencoba mengurai alamat. hostNameOrAddress Jika parameter berisi string IP legal literal, maka fase pertama berhasil.

  2. Pencarian terbalik menggunakan alamat IP string IP literal dicoba untuk mendapatkan nama host. Hasil ini ditetapkan sebagai HostName properti .

  3. Nama host dari pencarian terbalik ini digunakan lagi untuk mendapatkan semua kemungkinan alamat IP yang terkait dengan nama dan ditetapkan sebagai AddressList properti .

Untuk literal string IPv4, ketiga langkah di atas dapat berhasil. Tetapi dimungkinkan untuk catatan DNS kedaluarsa untuk alamat IPv4 yang benar-benar milik host yang berbeda untuk dikembalikan. Ini dapat menyebabkan langkah #3 gagal dan melempar pengecualian (ada catatan PTR DNS untuk alamat IPv4, tetapi tidak ada catatan DNS A untuk alamat IPv4).

Untuk IPv6, langkah #2 di atas mungkin gagal, karena sebagian besar penyebaran IPv6 tidak mendaftarkan catatan terbalik (PTR) untuk alamat IPv6. Jadi metode ini dapat mengembalikan string IPv6 literal sebagai nama host domain yang sepenuhnya memenuhi syarat (FQDN) di HostName properti .

Metode ini GetHostAddresses memiliki perilaku yang berbeda sehubungan dengan literal IP. Jika langkah #1 di atas berhasil (berhasil diurai sebagai alamat IP), alamat tersebut segera dikembalikan sebagai hasilnya. Tidak ada upaya untuk pencarian terbalik.

Alamat IPv6 difilter dari hasil metode ini jika komputer lokal tidak menginstal IPv6. Akibatnya, dimungkinkan untuk mendapatkan kembali instans kosong IPHostEntry jika hanya hasil IPv6 jika tersedia untuk hostNameOrAddress.parameter.

Properti Aliases instans yang IPHostEntry dikembalikan tidak diisi oleh metode ini dan akan selalu kosong.

Metode ini diimplementasikan menggunakan API resolusi nama sistem operasi yang mendasar (seperti API Win32 getaddrinfo di Windows, dan API yang setara pada platform lain). Jika host dijelaskan dalam hosts file, alamat IP atau alamat di sana akan dikembalikan tanpa mengkueri server DNS.

Catatan

Anggota ini memancarkan informasi pelacakan saat Anda mengaktifkan pelacakan jaringan di aplikasi Anda. Untuk informasi selengkapnya, lihat Pelacakan Jaringan di .NET Framework.

Metode ini disimpan dalam tugas yang menampilkan semua pengecualian non-penggunaan yang dapat dilemparkan oleh rekan sinkron metode. Jika pengecualian disimpan ke dalam tugas yang dikembalikan, pengecualian tersebut akan dilemparkan saat tugas ditunggu. Pengecualian penggunaan, seperti ArgumentException, masih dilemparkan secara sinkron. Untuk pengecualian yang disimpan, lihat pengecualian yang dilemparkan oleh GetHostEntry(String).

Berlaku untuk

GetHostEntryAsync(String, CancellationToken)

Sumber:
Dns.cs
Sumber:
Dns.cs
Sumber:
Dns.cs

Menyelesaikan nama host atau alamat IP ke IPHostEntry instans sebagai operasi asinkron.

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)

Parameter

hostNameOrAddress
String

Nama host atau alamat IP untuk diselesaikan.

cancellationToken
CancellationToken

Token pembatalan yang dapat digunakan untuk memberi sinyal operasi asinkron harus dibatalkan.

Mengembalikan

Objek tugas yang mewakili operasi asinkron. Properti Result pada objek tugas mengembalikan instans IPHostEntry yang berisi informasi alamat tentang host yang ditentukan dalam hostNameOrAddress.

Pengecualian

Token pembatalan dibatalkan. Pengecualian ini disimpan ke dalam tugas yang dikembalikan.

Keterangan

Metode ini disimpan dalam tugas yang menampilkan semua pengecualian non-penggunaan yang dapat dilemparkan oleh rekan sinkron metode. Jika pengecualian disimpan ke dalam tugas yang dikembalikan, pengecualian tersebut akan dilemparkan saat tugas ditunggu. Pengecualian penggunaan, seperti ArgumentException, masih dilemparkan secara sinkron. Untuk pengecualian yang disimpan, lihat pengecualian yang dilemparkan oleh GetHostEntry(String).

Berlaku untuk

GetHostEntryAsync(String, AddressFamily, CancellationToken)

Sumber:
Dns.cs
Sumber:
Dns.cs
Sumber:
Dns.cs

Menyelesaikan nama host atau alamat IP ke IPHostEntry instans sebagai operasi asinkron.

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)

Parameter

hostNameOrAddress
String

Nama host atau alamat IP untuk diselesaikan.

family
AddressFamily

Keluarga alamat tempat IP harus diambil. Jika Unspecified, ambil semua IP terlepas dari keluarga alamat.

cancellationToken
CancellationToken

Token pembatalan yang dapat digunakan untuk memberi sinyal operasi asinkron harus dibatalkan.

Mengembalikan

Objek tugas yang mewakili operasi asinkron. Properti Result pada objek tugas mengembalikan instans IPHostEntry yang berisi informasi alamat tentang host yang ditentukan dalam hostNameOrAddress.

Pengecualian

Token pembatalan dibatalkan. Pengecualian ini disimpan ke dalam tugas yang dikembalikan.

Keterangan

Metode ini disimpan dalam tugas yang menampilkan semua pengecualian non-penggunaan yang dapat dilemparkan oleh rekan sinkron metode. Jika pengecualian disimpan ke dalam tugas yang dikembalikan, pengecualian tersebut akan dilemparkan saat tugas ditunggu. Pengecualian penggunaan, seperti ArgumentException, masih dilemparkan secara sinkron. Untuk pengecualian yang disimpan, lihat pengecualian yang dilemparkan oleh GetHostEntry(String, AddressFamily).

Berlaku untuk