10

Ich habe kürzlich gehört, dass Sie Webanwendungsprojekte vorkompilieren können. Meine Frage ist wie?Wie wird ein Webanwendungsprojekt vorkompiliert?

Gerade jetzt, wenn ich eine publish für meine Web-Anwendung und wählen Sie only files needed to run this application Ich bekomme es veröffentlicht, aber es hat immer noch alle meine ASPX-Seiten und es wird immer noch nur JIT kompilieren die Seiten. Wie mache ich es so, dass alle ASPX-Seiten vorkompiliert werden, bevor sie auf dem Server abgelegt werden?

Antwort

7

Sie können eine Projektvorlage namens Web Deployment Project (WDP) (VS2008 Version here) herunterladen, die die Build- und Deployment-Funktionen von Visual Studio erweitert. Dies umschließt im Wesentlichen Features von aspnet_compile.exe, aber Sie können dies visuell als Teil Ihrer Gesamtlösung tun.

Neben der Vorkompilierung können Sie auch eine Reihe interessanter Dinge erledigen, wie den Austausch von Konfigurationsdateien (ideal für die Bereitstellung in verschiedenen Umgebungen) und die Konfiguration Ihrer Assemblys (pro Seite, pro Website usw.).).

Zwei gute Scott Guthrie Blogs über diese Art Projekt:

habe ich dieses Projekt Typ für einige VS2005 verwendet und VS2008 Projekte ein d es ist von unschätzbarem Wert (besonders für diese alten Website-Projekte !!).

Ich wusste nicht, das war auch in der MSDN-Bibliothek, aber here's ein schöner Artikel in MSDN für WDP.

Ich hoffe, das hilft!

EDIT: WDP des exist für VS2005 und VS2010 auch.

+0

Jedem sollte bewusst sein, dass es in VS2010 einen Fehler in Web Deployment-Projekten gibt, der dazu führt, dass alle Dateien erstellt werden, einschließlich derjenigen, die im Projekt "ausgeschlossen" sind. Dies ist äußerst ärgerlich, wenn Sie ausgeschlossene Dateien verwenden und den Ansatz effektiv durchbrechen. – BrianFinkel

+2

Was wäre toll, wenn es eine Möglichkeit gäbe, den Befehl Publizieren auf Vorkompilieren anzupassen ... – BrianFinkel

0

Wenn Sie die Site veröffentlichen, deaktivieren Sie die Option "Zulassen, dass diese vorkompilierte Site aktualisierbar ist".

+2

das ist nur für "Website" -Projekte. nicht "Web Application" – Earlz