Le type ou l'espace de noms n'a pas pu être trouvé
Je suis en train d'essayer de convertir un WiX 3.5 actions personnalisées projet dans Visual Studio 2008 pour WiX 3.7 et Visual Studio 2012 et je suis de l'exception suivante:
Le type ou le nom d'espace de noms 'MyNamespace' n'a pas pu être trouvée (êtes-vous
manque une directive using ou une référence d'assembly?)
La dll est certainement référencé et Visual Studio 2012 a aucun problème à voir l'espace de noms. Tout sous le même espace de noms apparaît dans Intellisense, mais quand je le construire je suis de cette exception.
Quelqu'un a une idée de ce qui se passe ici?
Informations Supplémentaires:
L'espace de noms, je suis le référencement est un .Net 2.0 de la bibliothèque et les actions personnalisées projet est un .Net 2.0 projet.
EDIT:
Après enquête, je suis de cet avertissement, qui je suppose est la racine du problème:
La base de référence "MyNamespace, Version=8.5.1.20, Culture=neutral,
PublicKeyToken=f593502af6ee46ae, processorArchitecture=MSIL" ne pouvait pas
être résolu, car il a une dépendance indirecte sur l' .NET
Cadre de l'assemblée "mscorlib, Version=4.0.0.0, Culture=neutral,
PublicKeyToken=b77a5c561934e089" qui a une plus grande "version 4.0.0.0"
que la version "2.0.0.0" dans l'infrastructure actuelle.
Pourquoi est-il en essayant d'utiliser mscorelib 4.0 c'est un 2.0 projet?
OriginalL'auteur Seth Moore | 2013-07-25
Vous devez vous connecter pour publier un commentaire.
Donc il s'est avéré que la dll en cours de référence, tandis que compilé à la cible .Net framework 2.0, a été compilé avec la version 4.0 du compilateur. La commutation du projet pour compiler avec la 3.5 compilateur résolu le problème.
OriginalL'auteur Seth Moore
Cela peut être complètement différent, mais j'ai eu un problème similaire hier. J'avais accidentellement copié un fichier de classe (.cs) à partir d'une solution vers une autre solution. Clairement, je n'avais pas ajouté les références à d'autres solutions.
J'ai eu ce problème sur le samedi et lors de l'examen de la solution, une classe a été copié dans le mauvais projet en ce sens qu'il y a un problème avec les références. Donc, il ne peut pas résoudre ce personnes problème spécifique, mais c'est une solution valable et il peut aider certains utilisateurs.
OriginalL'auteur Zak Willis
Dans notre cas, bien que référencé dans la dll a été ciblage .Net 4.0, il avait sa propre référence à un .Net 4.5.2 dll. Référencé dans la framework 4.0 cible nous a conduit à croire que 4.5 ou 4.5.1 étaient suffisantes pour gérer les choses, mais ils n'étaient pas—le référencement projet a dû être 4.5.2 pour gérer la dll et de toutes ses références.
C'était clairement une erreur de la part de la dll maker.
OriginalL'auteur ErikE