Lezen in het Engels

Delen via


'<afgeleidetypenaam>' kan niet worden overgenomen van <het type> '<constructedbasetypename>' omdat hiermee de toegang van het type '<internaltypename>' buiten de assembly wordt uitgebreid

Een afgeleide klasse of interface probeert het toegangsniveau van een beperkt type uit te breiden door deze te gebruiken als een typeargument voor een basisklasse of interface.

Met de volgende code kan deze fout worden gegenereerd.

Public Class baseClass(Of t)  
End Class  
Public Class derivedClass  
    Inherits baseClass(Of restrictedStructure)  
End Class  
Friend Structure restrictedStructure  
    Dim firstMember As Integer  
End Structure  

Code buiten de assembly is niet toegestaan.restrictedStructure derivedClass U kunt echter toegang krijgen vanuit elke code waarnaar kan worden verwezen. derivedClass Kan daarom niet overnemen baseClass als het wordt gebruikt restrictedStructure als een typeargument, omdat dit kan worden blootgesteld restrictedStructure aan code in een assembly.

Fout-id: BC30922

Deze fout corrigeren

  • Pas de toegangsniveaus van de klassen of interfaces aan, zodat het afgeleide type het toegangsniveau van het beperkte type niet uitbreidt.

    – of –

  • Als u de toegangsniveaus niet kunt aanpassen, gebruikt u het beperkte type niet als een typeargument bij het samenstellen van de basisklasse of interface.

Zie ook