HttpNavigationManager no longer uses NavigationException#61306
HttpNavigationManager no longer uses NavigationException#61306ilonatommy merged 23 commits intodotnet:mainfrom
HttpNavigationManager no longer uses NavigationException#61306Conversation
src/Components/Endpoints/src/DependencyInjection/HttpNavigationManager.cs
Outdated
Show resolved
Hide resolved
...testassets/Components.TestServer/RazorComponents/Pages/Routing/SSRRedirectionStreaming.razor
Outdated
Show resolved
Hide resolved
...s/test/testassets/Components.TestServer/RazorComponents/Pages/Routing/RoutingTestCases.razor
Show resolved
Hide resolved
…onents/Pages/Routing/SSRRedirectionStreaming.razor Co-authored-by: Javier Calvarro Nelson <jacalvar@microsoft.com>
|
while new elements are still getting enqueued into the _batchBuilder.ComponentRenderQueue inWe're operating on the shared object in the loop, so we cannot stop PrerenderedRedirection render. PrerenderedRedirection Deque is triggered after OnInitializedAsync but started in a process triggered before OnInitializedAsync, with _rendererIsStopped=false.
My proposal: An alternative (I need your opinion on this, @javiercn): |
|
Using the "waiting" queue is not an answer - it blocks rendering because most of the render items is added when |
javiercn
left a comment
There was a problem hiding this comment.
Looks great, I have some minor feedback about the public API, but let's not block on it for preview 4.
I think we also want to capture some concrete behaviors as part of the Renderer tests to make sure we don't regress them in the future, but we don't have to wait on that for this to go in.
Thanks for persevering through this change!
Description
NavigationExceptionwithAppContextswitch. Naming updates are welcome.catches it in the places where they are, withoutAppContext.httpContextredirection.HttpNavigationManager) and interactivity SSR (RemoteNavigationManager) scenarios.Routing test casespage.Fixes #59451