Blazor 服务器端应用程序上的子 Blazor 应用程序

Child Blazor app on Blazor Server side app

将客户端 Blazor 应用程序添加到服务器端 Blazor 应用程序

继续阅读此处的有用答案

我 运行 遇到这样一种情况,如果能够将客户端 Blazor 应用程序添加到 Blazor 服务器端应用程序会很有帮助

我已经创建了 Blazor 服务器应用程序,将客户端应用程序附加到服务器应用程序,并调整服务器 startup.cs 以映射子应用程序。我还确认了客户端应用 index.html 基值是正确的

 app.UseEndpoints(endpoints =>
        {
            endpoints.MapControllers();
            endpoints.MapBlazorHub();
            endpoints.MapFallbackToPage("/_Host");
        });

 app.Map("/subapp", child =>
        {
            child.UseRouting();
            child.UseEndpoints(endpoints =>
            {

endpoints.MapFallbackToClientSideBlazor<BlazorCoreHosted.Subapp.Startup>("index.html");
            });
            child.UseClientSideBlazorFiles<BlazorCoreHosted.Subapp.Startup>();
        });

当我转到 localhost/subapp 页面时,父应用程序显示 "Sorry, there's nothing at this address.",我可以看到父应用程序正在拦截路由

有没有办法解决这个问题,或者这不是一个有效的场景?

谢谢

马克

感谢 'agua from mars' 的建议,并阅读了下面的 link 我尝试改变我使用 app.map

的顺序

将app.map移动到app.UseRouting()之前;创建预期结果

https://docs.microsoft.com/en-us/aspnet/core/fundamentals/middleware/?view=aspnetcore-3.0