"MustOverride" no se puede especificar en "<procedurename>" porque se encuentra en un tipo parcial que se declaró como "NotInheritable" en otra definición parcial.
Se declaró un procedimiento o una propiedad como MustOverride
dentro de una clase definida en varias declaraciones parciales, pero una de estas definiciones parciales especifica NotInheritable
para la clase.
Cuando se divide la definición de una clase entre varias declaraciones parciales, el compilador trata a la clase tipo como la unión de todas sus declaraciones parciales. Esto se aplica no solo a los miembros, sino también a la implementación, la herencia y el nivel de acceso.
Para invalidar un procedimiento o una propiedad, una clase debe heredar dicho procedimiento o propiedad de una clase base. Por lo tanto, para especificar MustOverride
para un procedimiento o una propiedad en una clase base, se debe especificar MustInherit
para la clase. Dado que son mutuamente contradictorios, no es posible especificar ambos, MustInherit
y NotInheritable
, para la misma clase.
Identificador de error: BC30927
Si se debe invalidar la propiedad o el procedimiento, quite la palabra clave
NotInheritable
de la declaración parcial en la que aparece.Si la clase debe ser
NotInheritable
, quite la palabra claveMustOverride
del procedimiento o la propiedad. No puede invalidar el procedimiento o la propiedad porque no es posible heredar la clase.
Comentarios de .NET
.NET es un proyecto de código abierto. Seleccione un vínculo para proporcionar comentarios: