Je rencontre le même problème depuis des années maintenant, en travaillant dans Visual Studio 2008. Et j'ai essayé toutes les "solutions" sur StackOverflow et des dizaines de blogs, tout comme je suis sûr que vous l'avez tous fait. Et parfois ils fonctionnent, et parfois ils ne fonctionnent pas, tout comme je suis sûr que vous les avez tous rencontrés. Et apparemment, c'est toujours un problème dans VS2010 et VS2012.
Donc finalement, il y a quelques mois, j'ai décidé que c'était assez, et en quelques semaines j'ai construit un outil appelé "Redesigner" qui génère des fichiers .designer. Il est open-source sous la licence BSD , avec le code source disponible sur SourceForge - gratuit à utiliser, gratuit à voler, libre de faire tout ce que vous voulez. Et il fait ce que Visual Studio ne fait pas si souvent, c'est-à-dire générer des fichiers .designer rapidement et de manière fiable.
Il s'agit d'un outil de ligne de commande autonome qui analyse les fichiers .aspx et .ascx, effectue toute la magie de réflexion nécessaire et crache les fichiers .designer corrects. Il fait tout l'analyse et la réflexion lui-même pour éviter de s'appuyer sur du code existant, que nous savons tous trop bien rompu. Il est écrit en C # contre .NET 3.5, mais il s'efforce d'éviter d'utiliser même System.Web pour autre chose que des déclarations de type, et il n'utilise pas ou ne s'appuie pas du tout sur Visual Studio .
Redesigner peut générer de nouveaux fichiers .designer; et il offre une option --verbose de sorte que lorsque les choses tournent mal, vous obtenez des messages d'erreur bien meilleurs que "Une exception de type System.Exception a été levée." Et il y a une option --verify qui peut être utilisée pour vous dire quand vos fichiers .designer existants sont cassés - contrôles manquants, déclarations de propriétés incorrectes, illisibles par Visual Studio, ou sinon tout simplement borked.
Nous l'utilisons sur mon lieu de travail pour nous sortir des confitures pendant la majeure partie du mois dernier maintenant, et bien que Redesigner soit encore une version bêta, il avance suffisamment pour que cela vaille la peine de partager son existence avec le public. J'ai bientôt l'intention de créer un plugin Visual Studio pour cela afin que vous puissiez simplement cliquer avec le bouton droit pour vérifier ou régénérer les fichiers de concepteur comme vous l'avez toujours souhaité. Mais en attendant, l'utilisation de la ligne de commande est assez facile et vous évitera beaucoup de maux de tête.
Quoi qu'il en soit, allez télécharger une copie de Redesigner maintenant et arrêtez de vous arracher les cheveux . Vous n'en aurez pas toujours besoin, mais quand vous le ferez, vous serez content de l'avoir!
https://sourceforge.net/projects/redesigner/