Dns.GetHostEntryAsync Metode
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
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
address
adalah 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:
Metode mencoba mengurai alamat.
hostNameOrAddress
Jika parameter berisi string IP legal literal, maka fase pertama berhasil.Pencarian terbalik menggunakan alamat IP string IP literal dicoba untuk mendapatkan nama host. Hasil ini ditetapkan sebagai HostName properti .
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).