2015-12-21 1 views
6

J'ai un site Web basé sur le modèle de projet .NET 4.0 ASP.net. Tout d'un coup, lorsque je reconstruis ma solution, le répertoire App_Code prend des récompenses de 3 à 4 minutes pour la compilation (en fonction de ce qui est affiché dans la fenêtre Sortie). Il n'y a que 13 classes dans ce répertoire et elles sont toutes très petites.Débogage de longues heures de compilation dans le répertoire App_Code

J'ai essayé de déplacer ces fichiers hors du répertoire App_Code vers un projet de bibliothèque de classes distinct, mais certains d'entre eux dépendent de l'espace de noms System.Web.Security qui ne peut pas être ajouté à un projet non-site Web.

Quelle est la meilleure façon de déboguer ceci pour déterminer ce qui encombre le processus de compilation?

+0

J'ai activé le déboguage détaillé pour que la plupart des informations soient écrites dans la fenêtre de sortie, mais il arrive toujours dans le "Répertoire de construction '/ App_Code /'." message et s'y bloque pendant quelques minutes parfois. Aucune information supplémentaire n'est fournie. – bperniciaro

+0

S'agit-il d'un projet de site Web ou d'un projet d'application Web? S'il s'agit d'un projet d'application Web, vous ne devez pas avoir le code dans App_Code, il peut se trouver dans n'importe quel dossier du site Web, à condition qu'il soit inclus dans le projet. –

+0

C'est un projet de site Web. – bperniciaro

Répondre

0

essayer mettre lot property = "false", Dans votre fichier web.config

< compilation debug = "true" targetFramework = "4.0" batch = "false">

+0

Cela n'a aucun effet sur les temps de compilation. – bperniciaro

1

En Si vous ne pouvez pas déplacer les fichiers app_code en raison de la dépendance du Web à un autre projet, les déplacer dans le même projet dans un autre dossier ne vous donnera aucun avantage.

  1. Les projets de site Web prennent un certain temps à construire, plus longtemps que les projets d'applications Web. Donc, voyez si vous pouvez le convertir.

  2. Vous pouvez également essayer de définir optimizeCompilations = "true" sous la balise de compilation.

  3. Modifier l'option de projet de construction pour compiler la page en cours sur exécution ou débogage

Plus referencence - https://msdn.microsoft.com/en-us/library/aa730880(VS.80).aspx

+0

Aucun de ces travaux malheureusement. – bperniciaro

+0

okay. Avez-vous essayé de le convertir en application Web? –

+0

Donnez-moi plus de détails à ce sujet .. Je pourrais vérifier à ma fin aussi. –

1

Malheureusement répertoire le « App_Code » est une boîte noire et vous pouvez » t regarder la compilation fichier par fichier. J'ai essayé de migrer vers un modèle d'application Web, mais cela a été compliqué par le fait que je me base sur le framework de fournisseur de profils qui n'est pas supporté par défaut.

Je pense que la meilleure solution est d'éviter complètement ce modèle. Je vais gérer les temps de compilation lents jusqu'à ce que je puisse migrer entièrement vers MVC. Ceci est particulièrement important car .NET 5.0 (Core) ne supporte pas du tout les formulaires Web.