OVH Cloud OVH Cloud

Déclenchement de ReflectionTypeLoadException

1 réponse
Avatar
Sébastien HOUZET
Bonjour,

Je rencontre un problème avec la méthode GetTypes() de la classe Assembly.
Celle-ci me génére l'exption suivant :
System.Reflection.ReflectionTypeLoadException

Quand je charge une DLL toute simple comme celle-ci :

Public Module ListeEnum

Public Enum Enum1
DEFAULT_ENUM = 0
ENUM_V1 = 1
ENUM_V2 = 2
ENUM_V3 = 3
End Enum

Public Enum Enum2
DEFAULT_ENUM_2 = 0
ENUM_V1_2 = 1
ENUM_V2_2 = 2
ENUM_V3_2 = 3
End Enum

Public Enum Enum3
DEFAULT_ENUM_3 = 0
ENUM_V1_3 = 1
ENUM_V2_3 = 2
ENUM_V3_3 = 3
End Enum

End Module

Je ne rencontre pas de problème sur la récupération de tous mes types de
puis la méthode GetTypes()
Par contre, j'ai chargé une Assembly plus complex qui doit faire appel à
d'autres Assembly, l'appel de GetTypes() génére l'exception suivante :
System.Reflection.ReflectionTypeLoadException

Avez-vous une idée qui fait que je ne peux pas récupérer les types de mon
Assembly.

Le message de cette exception est "Échec du chargement d'un ou plusieurs
types dans l'assembly"

Cordialement.

1 réponse

Avatar
Sébastien HOUZET
J'ai trouvé, il manquait une référence vers une autre Assembly.
Si vous êtes dans le même cas que moi, pour trouver les références
manquantes utiliser
ass.GetExportedTypes()

Celle-ci va lever une exception avec le nom de l'assembly manquante.

@++

"Sébastien HOUZET" a écrit dans le message de news:

Bonjour,

Je rencontre un problème avec la méthode GetTypes() de la classe Assembly.
Celle-ci me génére l'exption suivant :
System.Reflection.ReflectionTypeLoadException

Quand je charge une DLL toute simple comme celle-ci :

Public Module ListeEnum

Public Enum Enum1
DEFAULT_ENUM = 0
ENUM_V1 = 1
ENUM_V2 = 2
ENUM_V3 = 3
End Enum

Public Enum Enum2
DEFAULT_ENUM_2 = 0
ENUM_V1_2 = 1
ENUM_V2_2 = 2
ENUM_V3_2 = 3
End Enum

Public Enum Enum3
DEFAULT_ENUM_3 = 0
ENUM_V1_3 = 1
ENUM_V2_3 = 2
ENUM_V3_3 = 3
End Enum

End Module

Je ne rencontre pas de problème sur la récupération de tous mes types de
puis la méthode GetTypes()
Par contre, j'ai chargé une Assembly plus complex qui doit faire appel à
d'autres Assembly, l'appel de GetTypes() génére l'exception suivante :
System.Reflection.ReflectionTypeLoadException

Avez-vous une idée qui fait que je ne peux pas récupérer les types de mon
Assembly.

Le message de cette exception est "Échec du chargement d'un ou plusieurs
types dans l'assembly"

Cordialement.