I have more than twenty solutions with ABP 8.3.4, how to upgrade to ABP 10.0.0?
貌似我的理解有问题哈。不加上那个js,页面按钮全部不工作。现在我用git回退到了ABP Studio最初胜场的App.razor,然后一番折腾,貌似没问题了。回头再来报告。
下边的意见,来自WIndSurf里免费的GPT 5.1,我折腾了48个小时。最后按它的指引,删除了这一句,就搞定了我的Blazor的WebApp的部署。
我觉得你们得重视这件事。你们模板里这样搞,别的ABP用户,真的能成功工作吗?
在 Blazor Web App 模式下,这行会让 blazor.web.js 被 重复加载和初始化,导致电路初始化状态错乱,经常在刷新或 DOM 更新时抛出:
Circuit host not initializedstartCircuitIfNotStartedrefreshRootComponents 相关错误Nginx 反向代理 (prod-erp2-app.conf) 的配置是针对 /、/_framework/、/loda-signalr-hubs/ 的,整体是按 Blazor Server 的最佳实践写的,目前没有看到会触发这个特定错误的问题,所以根因在前端启动方式,而不是反代。
不再手动加载 _framework/blazor.web.js,让框架自己管理脚本加载和电路初始化。
这样可以避免 同一页面上两次启动 Blazor,按经验这个能解决你现在在 https://app.loda.net 上看到的那串 Circuit host not initialized 异常。
我跟你隆重的反馈第一个问题:
我从.NET 6.0到.NET 8.0,都是自己“想当然的”“优化”了Visual Studio 2022默认生成的Dockerfile
它默认是3步
过去的几年,我这个技巧是没有问题的。
但是到了Blazor WebApp这里,就会导致发布之后,没有_framework文件夹。
我取消自己山寨的优化,就搞定了这个问题。
[maliming] said: 你可以先试试Blazor Server, 它和web app差不多. webapp```
那我就要修改这里,改成_framework/blazor.server.js
才适配Blazor.Server?
我们已经用了2年的Blazor Server了。
我刚刚去ChatGPT学习了一下,Blazor Web App才是未来啊。我现在以同样的名字,去ABP Studio生成全新的代码,UI选择Blazor Web App试试?
WindSurf现在让我这样干,我还是等你吃完饭回复我一下啊。因为你说ABP是采用web.js。 但是我现在发布到https://erp2.loda.net 确实是纯粹的Blazor Server。
我现在去学习什么是BlazorWebApp。
已做两处关键修改:
PlatformBlazorModule.cs 第 131 行:IsBlazorWebApp = false(改回纯 Blazor Server) App.razor 第 50 行:引用改回 blazor.server.js 这样 Docker 构建时会按标准 Blazor Server 模式生成 framework 目录。
那你给我解释一下,为什么我这个Blazor Server的项目(发布),ABP框架用的文件貌似是Blazor WebAssembly的呢?
发布没有_framework文件夹的事我自己去搞定。
cd "e:\gitlab\platform\deploy\blazor-server\src\Loda.Platform.Blazor"
dotnet clean
dotnet publish -c Release -o .\publish-test
这个文件缺失,是我的发布行为的问题。我本地这么干干净净发布,是会有这个文件夹的。
我是Blazor Server的项目呢?我目前还没有开始使用Blazor WebAssembly。