¿Cómo recargar automáticamente el proyecto .NET Core en Visual Studio 2019?

11

Intento volver a cargar automáticamente ASP.NET Core Project igual que Angular con Node o NPM.

Significa que cambio el código de .NET Core Project y lo guardo. Ese tiempo automáticamente efecto directo en el navegador y recarga automáticamente la página web en el navegador.

Akash Limbani
fuente
No estoy exactamente seguro de qué quieres decir con recarga pero, en general, no puedes cambiar el código en tiempo de ejecución.
Yasser Jarouf
@YasserJarouf, no estoy hablando en el estudio visual 2019.
Akash Limbani
Los proyectos de ASP.NET Core Angular ya vuelven a cargar el código del lado del cliente: son angulares, no solo same asangulares. ASP.NET Core se utiliza para proporcionar las API y las páginas que no son SPA.
Panagiotis Kanavos el
¿De alguna otra manera, como combinar el paquete de instalación npm con el proyecto ASP.NET Core?
Akash Limbani

Respuestas:

5

Creo que el reloj dotnet debería funcionar. Consulte la documentación del enlace ya que hay varias opciones.

  1. Agregue Microsoft.DotNet.Watcher.Tools a la sección de herramientas del archivo project.json
  2. Ejecutar restauración dotnet
  3. Ejecutar con dotnet watch run
PrinceT
fuente
Pero usando esto, no puedo recargar automáticamente como Angular. Si presioné ctrl + s , esa vez no hay ninguna acción que funcione en el navegador. Gracias por dar respuesta.
Akash Limbani
debe ejecutar su aplicación utilizando el símbolo del sistema y agregar detalles de observación en el proyecto. json
PrinceT
O simplemente puede utilizar perfil de lanzamiento que proporcioné en mi respuesta ..
GrowSing
Si lo hice. Compruebo usar este comando dotnet watch run.
Akash Limbani
Puede ver los cambios en la consola ... cuando intenta ejecutar ... ¿puede ver algo?
PrinceT
3

De acuerdo con este requisito, necesitamos ejecutar la aplicación .net core al igual que la aplicación Angular, cargando las páginas y el contenido automáticamente sin actualización integrada y manual.

Investigué un poco y experimenté en mis más de 7 años como desarrollador de .NET trabajando como un recurso senior en la compañía de desarrollo ASP.NET que la recarga automática no es posible en el proyecto principal de ASP.NET. Sin embargo, hemos tenido éxito, en nuestra solución estamos usando dotnet watch que monitorea los archivos fuente y si un archivo cambia, apaga la aplicación que inició, reconstruye y publica el proyecto, y luego reinicia la aplicación, entonces solo necesitamos Actualice la página manualmente en el navegador para obtener los cambios que se hicieron en la aplicación, no necesitamos construir o iniciar el proyecto.

Pasos a seguir para usar asp.net watch:

1) Crear la aplicación principal de Net.

2) Abra una ventana de comando en la carpeta de su proyecto web

3) Tipo dotnet watch run

4) Abra su navegador y navegue a una API o Página

5) Hacer un cambio al código fuente

6) Guarde el archivo

7) Regrese al navegador y actualice manualmente

8) Deberías ver reflejado el cambio

Kristy Davis
fuente
¿Cómo hacer en Visual Studio 2019?
Akash Limbani
2

Puedes usar dotnet watch. Verbigracia. Docs

He creado un perfil de almuerzo personalizado para facilitar la ejecución en VS.

"Watch": {
  "executablePath": "dotnet.exe",
  "workingDirectory": "$(ProjectDir)",
  "commandLineArgs": "watch run",
  "launchBrowser": false,
  "launchUrl": "http://localhost:5000/",
  "environmentVariables": {
    "ASPNETCORE_ENVIRONMENT": "Development"
  }
}
GrowSing
fuente
Al usar esto, no se recarga automáticamente en el navegador como Angular.
Akash Limbani
¿Se puede ejecutar el proyecto angular?
Akash Limbani
2

ejecuta este comando en la consola del proyecto

dotnet watch run

lo mismo funciona para el código visual de estudio

Amir Dora
fuente
1

Debería pensar en triple antes de pasar a esta opción. (1) Consume muchos recursos. Como requiere la autocompilación, como operación previa, del proyecto modificado y, a veces, de toda la solución. (¡Imagina una solución Asp.net de mediana a enorme compuesta de muchos proyectos, construye para cada modificación realizada! ¿Cuánto tiempo queda para la programación ???) (2), como sabes, la recarga de la página consume mucho ¡Tiempo para el primer lanzamiento después de una compilación exitosa! ... Por lo tanto, el tiempo que desea ganar con esta opción se desperdiciará en múltiples, especialmente los lenguajes de programación basados ​​en CLR (por ejemplo .NET Core). Y finalmente, (3) se espera que su proyecto necesite desarrollar muestras de prueba que puedan inyectarse automáticamente en la vista para un mejor proceso de automatización, ¡imagine lo difícil que es!

En cambio, intente probar su solución de forma unitaria, y luego, se espera que cualquier próxima modificación sea superficial y de baja ocurrencia.

Si no está de acuerdo con mi propuesta, sugiero desarrollar una extensión de estudio visual que recargue mejor la página web de destino en on-buildlugar de un on-save-changesevento. A continuación, Ctrl + bhará el trabajo!

¿Donde empezar?

Desarrollé un VSIX que vigila las carpetas para cargar automáticamente archivos generados específicos fuera de la interfaz de usuario de VS. compruebe el código fuente, tendrá una idea sobre la gestión de archivos del proyecto. gira en la API EnvDTE, eche un vistazo a este código.

Además, verifique el proyecto fuente desde aquí

AbuDawood
fuente