J'ai un gros logiciel gonflé et je veux ajouter un nouvel élément de l'interface graphique. L'élément GUI a été écrit en utilisant XAML et WPF. J'ai créé l'élément d'interface utilisateur dans un assemblage séparé et le référence dans le gros logiciel. Les deux projets compilés en douceur sous VS2010, mais quand je cours mon application, je reçois un TypeLoadException
.Quel type de problème peut provoquer une exception TypeLoadException?
En regardant dans l'exception avec le débogueur, j'obtiens le message suivant: Could not load type GUI.Dashboard from assembly GUI, blah, blah
. Il n'y a pas de InnerException
ni d'autres détails.
La documentation .GNU indique que ce message s'affiche lorsqu'il n'y a aucun message transmis au constructeur de l'exception. Je suppose que le producteur de l'exception elle-même ne sait pas comment cela s'est passé.
J'ai essayé d'utiliser l'outil Fuslogvw.exe
et il m'a effectivement montré quelques dépendances manquantes mineures qui ne sont pas liées. Cependant, il ne peut trouver aucune information sur cette exception.
Quel genre de problème peut éventuellement lancer une exception imprécise comme celle-ci? Est-il un moyen de rendre Fuslogvw.exe au courant pour obtenir quelques détails?
Nous vous remercions à l'avance,
Edit: Je compilé efficacement mon application avec des symboles de débogage. L'exception se produit lorsque j'essaie d'instancier une classe contenant une référence au symbole problématique. à savoir:
class SomeClass
{
GUI.Dashboard dashboard;
}
Et la trace appel ressemble loke ceci:
at SomeClass..ctor()
at MainClass.Main() din MainClass.cs:line 42
Si vous avez compilé avec des symboles de débogage, vous devez vérifier la trace de pile de l'exception. Il devrait vous pointer vers la ligne avec le problème. – Reddog
Oui, j'ai la trace de la pile de l'exception, mais ce n'est pas très utile. J'ai édité le poste en conséquence. – slaphappy
Y a-t-il une chance que vous ayez des conflits de nom d'assembly? Ou anciennes versions d'un assembly avec le même nom dans le GAC, ou quelque part? –