2015-12-21 32 views
6

Ich habe eine Website basierend auf der .NET 4.0 ASP.net-Projektvorlage. Plötzlich, wenn ich meine Lösung neu aufbaue, dauert das App_Code-Verzeichnis 3-4 Minuten zum Kompilieren (basierend auf dem, was im Ausgabefenster angezeigt wird). Es gibt nur ungefähr 13 Klassen in diesem Verzeichnis und sie sind alle sehr klein.Debuggen von langen Kompilierungszeiten in App_Code-Verzeichnis

Ich habe versucht, diese Dateien aus dem App_Code-Verzeichnis in ein separates Klassenbibliotheksprojekt zu verschieben, aber einige davon hängen vom System.Web.Security-Namespace ab, der nicht zu einem Nicht-Website-Projekt hinzugefügt werden kann.

Was ist der beste Weg, um dies zu debuggen, um zu bestimmen, was den Kompilierprozess in den Hintergrund stellt?

+0

Ich habe ausführliche Debugging aktiviert, so dass die meisten Informationen in das Ausgabefenster geschrieben werden, aber es immer noch in das "Building Verzeichnis"/App_Code/'. " Nachricht und hängt manchmal für Minuten. Keine weiteren Informationen werden bereitgestellt. – bperniciaro

+0

Ist dies ein Website- oder ein Webanwendungsprojekt? Wenn es sich um ein Webanwendungsprojekt handelt, muss der Code in App_Code nicht vorhanden sein. Er kann sich in einem beliebigen Ordner der Website befinden, sofern er im Projekt enthalten ist. –

+0

Es ist ein Website-Projekt. – bperniciaro

Antwort

0

versuchen gesetzt Eigenschaft Batch = "false", In der Datei Web.config

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

+0

Dies hat keine Auswirkungen auf die Kompilierzeiten. – bperniciaro

1

In Wenn Sie die app_code-Dateien aufgrund der Webabhängigkeit nicht in ein anderes Projekt verschieben können, erhalten Sie keine Vorteile, wenn Sie sie in dasselbe Projekt in einem anderen Ordner verschieben.

  1. Website-Projekte dauern eine Weile, länger als Web-App-Projekte. Also, sehen Sie, ob Sie es konvertieren können.

  2. Sie können auch versuchen, opti- mateCompilations = "true" unter dem Kompilierungs-Tag zu setzen.

  3. Ändern Sie den Build-Projekt Option nur die aktuelle Seite auf Lauf oder debug zu kompilieren

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

+0

Keiner von diesen hat leider funktioniert. – bperniciaro

+0

okay. Haben Sie versucht, es in Web Application zu konvertieren? –

+0

Geben Sie mir mehr Details dazu ... Ich könnte es auch an meinem Ende überprüfen. –

1

Leider ist der 'App_Code' Verzeichnis ist eine Black-Box und Sie können‘ t Kompilierung Datei für Datei. Ich habe versucht, zu einer Webanwendungsvorlage zu migrieren, aber dies wurde durch die Tatsache erschwert, dass ich auf das Profilanbieter-Framework angewiesen bin, das standardmäßig nicht unterstützt wird.

Ich denke, die beste Lösung ist, diese Vorlage vollständig zu vermeiden. Ich werde mich mit den langsamen Kompilierungszeiten beschäftigen, bis ich vollständig zu MVC migrieren kann. Dies ist besonders wichtig, da .NET 5.0 (Core) Web Forms überhaupt nicht unterstützt.