Wie man erfolgreich eine ASP.NET-Webanwendung
mit MSBuild veröffentlicht
Die Veröffentlichung einer ASP.NET-Webanwendung kann manchmal entmutigend erscheinen, insbesondere wenn Ihre Versuche zu verwirrenden Fehlermeldungen führen. Wenn Sie versucht haben, Ihre ASP.NET-MVC-Anwendung lokal mit MSBuild zu veröffentlichen und die gefürchtete Nachricht „Skipping unpublishable project“ erhalten haben, machen Sie sich keine Sorgen! Dieser Blog wird Sie durch den richtigen Prozess zur Veröffentlichung Ihrer Anwendung führen und sicherstellen, dass Ihre Bereitstellung reibungslos und effizient verläuft.
Das Verständnis des Fehlers
Wenn Sie versuchen, das folgende NAnt-Ziel auszuführen:
<target name="publish-artifacts-to-build">
<msbuild project="my-solution.sln" target="Publish">
<property name="Configuration" value="debug" />
<property name="OutDir" value="builds\" />
<arg line="/m:2 /tv:3.5" />
</msbuild>
</target>
entsteht die Fehlermeldung „Skipping unpublishable project.“, weil Sie ein Ziel aufrufen, das für einen anderen Zweck vorgesehen ist. Das Publish
-Ziel, das Sie verwenden möchten, ist speziell für OneClick-Bereitstellung konzipiert und nicht für die direkte Veröffentlichung einer Website.
Der richtige Ansatz zur Veröffentlichung Ihrer ASP.NET-Anwendung
Um Ihre ASP.NET-Webanwendung erfolgreich zu veröffentlichen, sollten Sie in Betracht ziehen, die AspNetCompiler
-Aufgabe anstelle der MSBuild
-Aufgabe zu verwenden. Diese Aufgabe ist besser geeignet, um Ihre ASP.NET-Anwendung in ein bereitstellbares Format zu kompilieren.
Schritte zur Veröffentlichung mit AspNetCompiler
So richten Sie den AspNetCompiler
ein:
-
Erstellen Sie ein neues NAnt-Ziel für die ASP.NET-Kompilierung:
Aktualisieren Sie Ihr NAnt-Ziel, um
AspNetCompiler
wie folgt zu verwenden:<target name="publish-artifacts-to-build"> <aspnetcompiler configuration="debug" targetedframework="4.0" virtualpath="/" physicalpath="path\to\your\webapp" outputpath="builds\" debug="true"> </aspnetcompiler> </target>
configuration
: Setzen Sie diese Eigenschaft aufdebug
oderrelease
, je nach Bedarf.physicalpath
: Geben Sie den Pfad zu Ihrem Webanwendungsverzeichnis an.outputpath
: Hier werden die kompilierten Dateien gespeichert.
-
Passen Sie Ihre Umgebung an:
Stellen Sie sicher, dass Ihre Umgebung zur Unterstützung der Veröffentlichung von ASP.NET-Webanwendungen eingerichtet ist. Dazu gehört die Gewährleistung, dass Ihre SDK-Versionen korrekt sind und alle erforderlichen Abhängigkeiten installiert sind.
-
Führen Sie den Bereitstellungsbefehl aus:
Mit dem korrekt eingerichteten NAnt-Ziel führen Sie Ihren Build aus. Dies kompiliert die ASP.NET-Anwendung und gibt sie im angegebenen Verzeichnis aus.
Weitere Ressourcen
Für detailliertere Informationen zur AspNetCompiler
-Aufgabe werfen Sie einen Blick in die offizielle Dokumentation auf MSDN. Diese Seite bietet Einblicke in die Eigenschaften und wie man sie effektiv für komplexere Bereitstellungen nutzt.
Fazit
Die Veröffentlichung einer ASP.NET-Webanwendung kann erreicht werden, ohne auf häufige Fallstricke zu stoßen. Durch die Verwendung der richtigen Aufgabe – in diesem Fall AspNetCompiler
– stellen Sie sicher, dass Ihre Anwendung korrekt kompiliert wird und bereit für die Bereitstellung ist. Wenn Sie den in diesem Blog skizzierten strukturierten Ansatz befolgen, werden Sie einen nahtlosen Bereitstellungsprozess erleben.
Gehen Sie intelligent mit Ihrer Entwicklungsumgebung um und vermeiden Sie in Zukunft Bereitstellungskopfschmerzen!