Ich versuche, ASP.NET Core Project wie Angular mit Node oder NPM automatisch neu zu laden.
Es bedeutet, dass ich den Code von .NET Core Project ändere und speichere. Diese Zeit leitet automatisch den Effekt im Browser und lädt die Webseite automatisch im Browser neu.
same as
Angular. ASP.NET Core wird verwendet, um die APIs und Nicht-SPA-Seiten bereitzustellen.Antworten:
Ich denke, dass die Dotnet-Uhr funktionieren sollte. Siehe die Dokumentation unter dem Link, da es verschiedene Optionen gibt.
quelle
Entsprechend dieser Anforderung müssen wir die .net-Kernanwendung genau wie die Angular-Anwendung ausführen und die Seiten und Inhalte automatisch ohne erstellte und manuelle Aktualisierung laden.
Ich hatte einige Nachforschungen angestellt und in mehr als 7 Jahren als .net-Entwickler als leitende Ressource in einer ASP.NET-Entwicklungsfirma erfahren, dass ein automatisches Neuladen in einem ASP.NET-Kernprojekt nicht möglich ist. Wir haben jedoch den Erfolg, dass wir in unserer Lösung Dotnet Watch verwenden, das Quelldateien überwacht. Wenn sich eine Datei ändert, wird die gestartete Anwendung heruntergefahren, das Projekt neu erstellt und veröffentlicht und anschließend die Anwendung neu gestartet Aktualisieren Sie die Seite manuell im Browser, um die Änderungen zu erhalten, die in der Anwendung vorgenommen wurden. Wir müssen das Projekt nicht erstellen oder starten.
Schritte zur Verwendung von asp.net watch:
1) Create.Net-Kernanwendung.
2) Öffnen Sie ein Befehlsfenster im Ordner Ihres Webprojekts
3) Typ
dotnet watch run
4) Öffnen Sie Ihren Browser und navigieren Sie zu einer API oder Seite
5) Nehmen Sie eine Änderung am Quellcode vor
6) Speichern Sie die Datei
7) Gehen Sie zurück zum Browser und aktualisieren Sie manuell
8) Sie sollten die Änderung reflektiert sehen
quelle
Sie können verwenden
dotnet watch
. Nämlich. DocsIch habe ein benutzerdefiniertes Lunch-Profil erstellt, um die Ausführung in VS zu vereinfachen.
quelle
Verwenden Sie dotnet watch, um den Quellcode neu zu kompilieren. Verwenden Sie den Browser-Link mit "Browser beim Speichern neu laden" aus Visual Studio, um alle Ihre Browser neu zu laden. https://marketplace.visualstudio.com/items?itemName=MadsKristensen.BrowserReloadonSave
quelle
Führen Sie diesen Befehl in der Projektkonsole aus
Gleiches gilt für Visual Studio Code
quelle
Sie sollten dreifach überlegen, bevor Sie mit dieser Option fortfahren. (1) Es ist ressourcenintensiv. Da es erforderlich ist, das modifizierte Projekt und manchmal die gesamte Lösung vor der Operation automatisch zu erstellen. (Stellen Sie sich eine mittlere bis große Asp.net-Lösung vor, die aus vielen Projekten besteht, und erstellen Sie sie für jede durchgeführte Änderung. Wie viel Zeit bleibt für die Programmierung übrig? Zeit für den ersten Start nach einem erfolgreichen Build !! ... Daher wird die Zeit, die Sie mit dieser Option gewinnen möchten, mehrfach verschwendet, insbesondere CLR-basierte Programmiersprachen (z. B. .NET Core). Und schließlich (3) wird erwartet, dass Ihr Projekt Testproben entwickeln muss, die automatisch in die Ansicht injiziert werden können, um einen besseren Automatisierungsprozess zu ermöglichen. Stellen Sie sich vor, wie schwierig es ist!
Versuchen Sie stattdessen, Ihre Lösung einem Unit-Test zu unterziehen. Anschließend wird erwartet, dass jede nächste Änderung oberflächlich ist und nur in geringem Umfang auftritt.
Wenn Sie mit meinem Vorschlag nicht einverstanden sind, schlage ich vor, eine Visual-Studio-Erweiterung zu entwickeln, die die Zielwebseite besser neu lädt
on-build
als einon-save-changes
Ereignis. Als nächstesCtrl + b
wird der Job machen!Wo soll man anfangen?
Ich habe einen VSIX entwickelt, der Ordner überwacht, um automatisch bestimmte generierte Dateien außerhalb der VS-Benutzeroberfläche zu laden. Überprüfen Sie den Quellcode. Sie erhalten eine Vorstellung von der Dateiverwaltung des Projekts. Es dreht sich in der EnvDTE-API. Schauen Sie sich diesen Code an.
Überprüfen Sie auch das Quellprojekt von hier aus
quelle