El libro que leí tiene la versión 9 desde el principio (ASP.NET Core 3 y Angular 9 - Tercera edición) y también usa la plantilla angular. Tengo instaladas las últimas actualizaciones de Visual Studio para vs 2019.
La plantilla de un proyecto Angular tiene la versión 8. El libro que leí tiene la versión 9. Entonces trato de actualizar mi versión angular. ng update me da
@angular/cli 8.3.14 -> 9.0.3 ng update @angular/cli @angular/core 8.2.12 -> 9.0.3 ng update @angular/core @nguniversal/aspnetcore-engine 8.1.1 -> 8.2.6 ng update @nguniversal/aspnetcore-engineActualicé cli y core. Pero cuando trato de actualizar el tercer paquete obtengo:
C:\Users\user\Test\ClientApp>ng update @nguniversal/aspnetcore-engine Using package manager: 'npm' Collecting installed dependencies... Found 39 dependencies. Package '@nguniversal/aspnetcore-engine' is not a dependency.Traté de ejecutar la aplicación de todos modos y me sale como HTML
Cannot GET /O una página de excepción con:
System.TimeoutException: The Angular CLI process did not start listening for requests within the timeout period of 0 seconds. Check the log output for error information. at Microsoft.AspNetCore.SpaServices.Extensions.Util.TaskTimeoutExtensions.WithTimeout[T](Task`1 task, TimeSpan timeoutDelay, String message) at Microsoft.AspNetCore.SpaServices.Extensions.Proxy.SpaProxy.PerformProxyRequest(HttpContext context, HttpClient httpClient, Task`1 baseUriTask, CancellationToken applicationStoppingToken, Boolean proxy404s) at Microsoft.AspNetCore.Builder.SpaProxyingExtensions.<>c__DisplayClass2_0.<<UseProxyToSpaDevelopmentServer>b__0>d.MoveNext() --- End of stack trace from previous location where exception was thrown --- at Microsoft.AspNetCore.Diagnostics.DeveloperExceptionPageMiddleware.Invoke(HttpContext context)Tal vez sea un poco tarde, pero tal vez esto ayude a otros. Me enfrenté exactamente al mismo problema. Para que funcione, haz esto en el paquete.json.
Cambio
"scripts":{ ... "start": "ng serve" ... } "scripts":{ ... "start": "echo Starting... && ng serve" ... }Esto fue tomado de un comentario de Smatusan . Esta es la explicación de por qué funciona.
"Debido a que este problema ocurre con frecuencia debido a que el tiempo de compilación inicial de ng serve supera la ventana de tiempo de espera programada del servicio .NET SPA, al darle el eco, el servicio .NET SPA recibe algunos datos y cree que está conectado". - mikejunt
El problema completo en GitHub se puede encontrar en el lado de Angular y en el lado de .NET
Tuve un problema similar cuando actualicé mi versión angular a 11 y todavía estaba ejecutando .net core 3.1.
Cómo lo resolví:
Actualizaciones de Angular completadas (asegúrese de que todos los módulos de nodo también estén actualizados) .Net core 5.0 instalado Haga clic con el botón derecho en solución->propiedades->Aplicación: menú desplegable Target Framework (cambie a 5.0 recientemente instalado) Guarde los cambios Administrar paquetes Nuget -> Actualizar Microsoft. AspNetCore.SpaServices.Extensions a la versión 5+
Luego pude iniciar mis sesiones de depuración con normalidad.