2009-04-20 12 views
2

Je reçois cette erreur dans Visual Studio 2008 dans une application Mobile Desktop .NET 3.5.VS 2008 concepteur "Impossible de trouver le type ...."

Impossible de trouver le type 'MyNamespace.MyType'. Assurez-vous que l'assembly qui contient ce type est référencé. Si ce type fait partie de votre projet de développement, assurez-vous que le projet a été construit avec succès.

Ceci apparaît lors de l'ouverture d'un formulaire. Le type qu'il ne peut pas référencer est un contrôle utilisateur faisant partie du même projet. Rien ne va pas avec les espaces de noms. C'est affolant - le projet se construit très bien.

En outre, le contrôle référencé est pas une classe générique comme dans cet article: "Could not find type" error loading a form in the Windows Forms Designer

MISE À JOUR: bien maintenant plus tard, il semble fonctionner. Cela semble être un problème sporadique ...

+0

Pourrait être intéressant de regarder la réponse acceptée pour [cette question similaire] (http://stackoverflow.com/questions/408002/could-not-load-file-or-assembly-xxxx-or-one-of-its-dependencies-the-system- can/422517 # 422517) –

+0

(+1) Je suis d'accord, un changement dans la version d'assemblage est potentiellement un problème. Lorsque vous voyez ce message, supprimez toutes les copies de la DLL avant de recompiler. On dirait qu'il s'agit de trouver une version différente de la DLL pour laquelle elle a été compilée. – Pedro

+0

La réponse de Pedro l'a corrigé pour moi. Une compilation propre n'a pas fonctionné, j'ai donc supprimé le dossier bin. Ensuite, cliquez sur reconstruire et il l'a réparé. Dans mon cas, j'ai renommé le projet plutôt que de changer les numéros de version – JonWillis

Répondre

1

La ligne réelle qui provoque un problème dans le fichier Form.designer.cs/vb? Parfois, il y a des problèmes de qualification de nom qui entraînent l'erreur que vous voyez. Essayez d'ouvrir le fichier de concepteur et de changer le nom comme suit

C#

global::MyNamespace.MyType 

VB.Net

Global.MyNamespace.MyType 

Après cela, reconstruire et rouvrir le concepteur

+0

N'a pas fonctionné. Initialement, la déclaration était juste "MyType ucMyType1" puisque le contrôle de l'utilisateur et le formulaire sont dans le même espace de noms. Mais ni MyNamespace.MyType ni global :: MyNamespace.MyType n'ont corrigé quoi que ce soit. Il n'y a pas de numéro de ligne - l'avertissement pour "Impossible de charger le type" a une ligne/col blanc. – Clyde

Questions connexes