2008-08-28 10 views
6

Tous les quelques jours VS2008 décide de se fâcher contre moi et ne parvient pas à générer un fichier de concepteur affirmant qu'il ne peut pas trouver le fichier spécifié et qu'il manque un assemblage. Voici le scénario:génération du fichier du concepteur a échoué

La page ASPX fait référence à un contrôle utilisateur personnalisé (héritant de UserControl) qui fait référence à un autre assembly dans le backend. Il existe de nombreuses autres références à cet assemblage "manquant" dans d'autres endroits du code qui ne génèrent pas d'erreurs. reconstruire, mettre à jour la source à la copie propre, crier à l'ordinateur, poinçonner l'écran, etc tout ne fonctionne pas.

Des suggestions? C'est assez agaçant.

Répondre

8

Nous avons eu des problèmes similaires auparavant, malheureusement, je ne me souviens pas de la solution exacte. Si vous utilisez un projet "Site Web" (pas de fichier de projet), commencez par vérifier que votre page et votre contrôle définissent tous deux la propriété ClassName dans la première ligne de votre fichier aspx/ascx et que vous spécifiez nom de la classe, y compris l'espace de noms.

Exemple:

< @Control Language = "VB" AutoEventWireup = "false" className = "YourProjectName.YourUserControl" Inherits = "YourProjectName.YourUserControl" CodeFile = "YourUserControl.ascx.vb " %>

Plusieurs fois ne pas fixer tout cela va fonctionner, mais vous obtiendrez des erreurs bizarres du compilateur et le comportement VS. Si vous utilisez un projet d'application de site Web, essayez de supprimer le fichier du concepteur manuellement, puis faites un clic droit sur votre projet et choisissez "Convertir à partir d'une application Web". Cette volonté devrait recréer le fichier de concepteur pour vous.

Ma seule autre suggestion serait de recréer la page et/ou le contrôle de l'utilisateur à partir de zéro.

0

Vous pouvez essayer d'archiver un modèle d'un nouveau fichier avec son équivalent concepteur. Si VS tousse alors vous pouvez faire une option "Ajouter existant" avec le fichier que vous avez déjà.

Cependant, il semble que ce soit un problème avec votre installation de VS2008, vous pouvez donc essayer de le réinstaller.

2

Jared, vous l'avez frappé. L'utilisation de "Convertir en application Web" pour générer manuellement le fichier du concepteur résout mon problème. Je suis content que vous ayez posté ceci avant que je commence à réinstaller. Merci.

0

J'ai trouvé qu'en utilisant un contrôle personnalisé, vous auriez besoin d'ajouter une référence au fichier .dll. Cela m'a corrigé après la migration d'un site Web vers une application Web.

Questions connexes