Nie można określić wartości "MustOverride" w parametrze "<procedurename>", ponieważ znajduje się w częściowym typie zadeklarowanym jako "NotInheritable" w innej częściowej definicji

Procedura lub właściwość jest deklarowana jako MustOverride w klasie zdefiniowanej w wielu deklaracjach częściowych, ale jedna z częściowych definicji określa NotInheritable klasę.

Podczas dzielenia definicji klasy między kilka deklaracji częściowych kompilator traktuje klasę jako związek wszystkich jego częściowych deklaracji. Dotyczy to nie tylko członków, ale także do poziomu implementacji, dziedziczenia i dostępu.

Aby zastąpić procedurę lub właściwość, klasa musi dziedziczyć ją z klasy bazowej. W związku z tym, aby określić MustOverride procedurę lub właściwość w klasie bazowej, należy określić MustInherit dla klasy . Ze względu na to, że są one wzajemnie sprzeczne, nie można określić zarówno dla tej samej klasy, jak MustInherit i NotInheritable dla tej samej klasy.

Identyfikator błędu: BC30927

Aby poprawić ten błąd

  • Jeśli właściwość lub procedura musi zostać zastąpiona, usuń NotInheritable słowo kluczowe z częściowej deklaracji, w której się pojawia.

  • Jeśli klasa musi mieć NotInheritablewartość , usuń MustOverride słowo kluczowe z procedury lub właściwości. Nie można go zastąpić, ponieważ nie można dziedziczyć klasy.

Zobacz też