Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Aggiornamento: novembre 2007
'MustOverride' cannot be specified on '<procedurename>' because it is in a partial type that is declared 'NotInheritable' in another partial definition
Una routine o una proprietà è dichiarata come MustOverride all'interno di una classe definita in più dichiarazioni parziali, ma una delle definizioni parziali specifica NotInheritable per la classe.
Quando la definizione di una classe viene divisa tra più dichiarazioni parziali, il compilatore considera tale classe come l'unione di tutte le relative dichiarazioni parziali. Questo riguarda non soltanto i membri, ma anche l'implementazione, l'ereditarietà e il livello di accesso.
Per eseguire l'override di una routine o una proprietà, una classe deve ereditarla da una classe base. Per specificare MustOverride per una routine o una proprietà in una classe base, di conseguenza, è necessario specificare MustInherit per la classe. Poiché MustInherit e NotInheritable sono in contraddizione fra loro, non è possibile specificarli entrambi per la medesima classe.
ID errore: BC30927
Per correggere l'errore
Se è necessario eseguire l'override della proprietà o della procedura, rimuovere la parola chiave NotInheritable dalla dichiarazione parziale in cui compare.
Se la classe deve essere NotInheritable, rimuovere la parola chiave MustOverride dalla routine o dalla proprietà. Non è possibile eseguirne l'override in quanto la classe non è ereditabile.
Vedere anche
Concetti
Nozioni fondamentali sull'ereditarietà