Bagikan melalui


Kelas '<classname>' harus mendeklarasikan 'Sub New' karena '<constructorname>' di kelas dasarnya '<baseclassname>' ditandai usang

Deklarasi kelas tidak menyertakan konstruktor, dan konstruktor kelas dasar ditandai dengan atribut ObsoleteAttribute dan instruksi untuk memperlakukannya sebagai kesalahan.

Ketika kelas turunan tidak mendeklarasikan konstruktor, Visual Basic mencoba menghasilkan konstruktor tanpa parameter implisit yang memanggil MyBase.New(). Jika tidak ada konstruktor yang dapat diakses di kelas dasar yang dapat dipanggil tanpa argumen, Visual Basic tidak dapat menghasilkan konstruktor implisit. Dalam hal ini, konstruktor yang diperlukan ditandai dengan atribut ObsoleteAttribute, jadi Visual Basic tidak dapat memanggilnya.

Anda dapat menandai elemen pemrograman apa pun sebagai tidak lagi digunakan dengan menerapkan ObsoleteAttribute kepadanya. Jika Anda melakukan ini, Anda dapat mengatur properti IsError dari atribut itu ke True atau False. Jika Anda mengaturnya ke True, compiler memperlakukan upaya untuk menggunakan elemen sebagai kesalahan. Jika Anda mengaturnya ke False, atau membiarkannya default ke False, compiler mengeluarkan peringatan jika ada upaya untuk menggunakan elemen.

ID Kesalahan: BC30917

Untuk memperbaiki kesalahan ini

  • Gunakan Sub New untuk mendeklarasikan konstruktor di kelas turunan.