Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Artikel ini menyediakan keterangan tambahan untuk dokumentasi referensi untuk API ini.
Pengecualian NotImplementedException dilemparkan ketika metode tertentu, mendapatkan aksesor, atau mengatur aksesor hadir sebagai anggota jenis tetapi tidak diimplementasikan.
NotImplementedException menggunakan implementasi Object.Equals default, yang mendukung kesetaraan referensi. Untuk daftar nilai awal sebuah instans NotImplementedException, lihat konstruktor NotImplementedException.
Melempar pengecualian
Anda dapat memilih untuk melemparkan NotImplementedException pengecualian dalam properti atau metode dalam jenis Anda sendiri ketika anggota tersebut masih dalam pengembangan dan hanya akan diimplementasikan dalam kode produksi. Dengan kata lain, NotImplementedException pengecualian harus identik dengan "masih dalam pengembangan."
Mengatasi pengecualian
Pengecualian NotImplementedException menunjukkan bahwa metode atau properti yang Anda coba panggil tidak memiliki implementasi dan karenanya tidak menyediakan fungsionalitas. Akibatnya, Anda tidak boleh menangani kesalahan ini dalam blok try/catch . Sebagai gantinya, Anda harus menghapus pemanggilan anggota dari kode Anda. Anda dapat menyertakan panggilan ke anggota saat diimplementasikan dalam versi produksi pustaka.
Dalam beberapa kasus, NotImplementedException pengecualian mungkin tidak digunakan untuk menunjukkan fungsionalitas yang masih dalam pengembangan di pustaka pra-produksi. Namun, ini masih menunjukkan bahwa fungsionalitas tidak tersedia, dan Anda harus menghapus pemanggilan anggota dari kode Anda.
NotImplementedException dan jenis pengecualian lainnya
.NET juga menyertakan dua jenis pengecualian lainnya, NotSupportedException dan PlatformNotSupportedException, yang menunjukkan bahwa tidak ada implementasi untuk anggota tertentu dari jenis. Anda harus menggunakan salah satu dari ini alih-alih NotImplementedException pengecualian dalam kondisi berikut:
Lemparkan pengecualian PlatformNotSupportedException di platform yang tidak mendukung fungsionalitas jika Anda telah merancang tipe yang memiliki satu atau lebih anggota yang tersedia di beberapa platform atau versi tetapi tidak di yang lainnya.
NotSupportedException Berikan pengecualian jika implementasi anggota antarmuka atau penimpaan ke metode kelas dasar abstrak tidak dimungkinkan.
Misalnya, metode Convert.ToInt32(DateTime) melemparkan pengecualian NotSupportedException karena tidak ada konversi yang bermakna antara tanggal dan waktu dan bilangan bulat bertanda 32-bit. Metode harus ada dalam kasus ini karena Convert kelas mengimplementasikan IConvertible antarmuka.
Anda juga harus memberikan NotSupportedException pengecualian jika Anda telah menerapkan kelas dasar abstrak dan menambahkan anggota baru ke dalamnya yang harus ditimpa oleh kelas turunan. Dalam hal ini, menjadikan anggota abstrak menyebabkan subkelas yang ada gagal dimuat.