Partager via


'<NomMembre>' ne peut pas exposer le type '<NomType>' en dehors du projet via <TypeConteneur> '<NomTypeConteneur>'

Mise à jour : novembre 2007

'<membername>' cannot expose type '<typename>' outside the project through <containertype> '<containertypename>'

Une variable, un paramètre de procédure ou un retour de fonction est exposé en dehors de son conteneur, mais il est déclaré comme un type qui ne doit pas être exposé en dehors du conteneur.

Le code squelette suivant affiche une situation qui génère cette erreur.

Private Class privateClass
End Class
Public Class mainClass
    Public exposedVar As New privateClass
End Class

Un type qui est déclaré Protected, Friend, Protected Friend ou Private est conçu pour avoir un accès limité en dehors de son contexte de déclaration. Son utilisation comme type de données d'une variable avec un accès moins limité nuit à cet objectif. Dans le code squelette précédent, exposedVar est Public et expose privateClass au code qui ne doit pas y avoir accès.

ID d'erreur : BC30909

Pour corriger cette erreur

  • Modifiez le niveau d'accès de la variable, du paramètre de procédure ou du retour de fonction de sorte qu'il soit au moins aussi restrictif que le niveau d'accès de son type de données.

Voir aussi

Concepts

Niveaux d'accès dans Visual Basic