Partager via


L'expression a le type '<NomType>', qui est un type restreint et qui ne peut pas être utilisé pour accéder aux membres hérités de 'Object' ou 'ValueType'

Mise à jour : novembre 2007

Expression has the type '<typename>' which is a restricted type and cannot be used to access members inherited from 'Object' or 'ValueType'

Une expression a la valeur d'un type qui ne peut pas être boxed par le common language runtime (CLR) mais accède à un membre qui nécessite une conversion boxing.

Conversion boxing fait référence au traitement nécessaire pour convertir un type en Object ou, quelquefois, en ValueType. Le common language runtime ne peut pas convertir certains types de structure, par exemple ArgIterator, RuntimeArgumentHandle et TypedReference.

Cette expression tente d'utiliser le type restreint pour appeler une méthode héritée de Object ou de ValueType, comme GetHashCode ou ToString. Pour accéder à cette méthode, Visual Basic a tenté une conversion boxing implicite qui provoque cette erreur.

ID d'erreur : BC31393

Pour corriger cette erreur

  1. Localisez l'expression qui a la valeur du type cité.

  2. Localisez la partie de votre instruction qui essaie d'appeler la méthode héritée de Object ou de ValueType.

  3. Réécrivez l'instruction pour éviter l'appel de méthode.

Voir aussi

Concepts

Conversions implicites et explicites