Leer en inglés

Compartir a través de


"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

Para corregir este error

  • 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 clave MustOverride del procedimiento o la propiedad. No puede invalidar el procedimiento o la propiedad porque no es posible heredar la clase.

Consulte también