我在 https://localhost:44381 上意外地同时运行了两个 Blazor WebAssembly 应用程序,然后出现了混乱。其中一个应用程序发生错误,因为它试图并未能从另一个示例应用程序中加载 DLL。我尝试打开浏览器的开发工具(Application > Clear storage),但没有帮助。我该如何彻底清除浏览器中 Blazor WebAssembly 应用程序的 DLL,以便我可以重新开始?
Chrome 和新版 Edge 按 F12 键打开开发者工具。在工具栏打开的情况下,在浏览器上右键单击刷新页面图标,选择“清空缓存并强制刷新”。这是清除所有内容(包括图标和 PWA 设置)的唯一方法。
只需按下Ctrl+F5,即可清除缓存并重新获取文件。
.csproj
(针对你的 wasm 站点)文件中,你可以强制应用程序在每次请求时下载资源。这会导致第一次加载时性能有所下降,但可以解决当前的问题。<PropertyGroup>
<BlazorCacheBootResources>false</BlazorCacheBootResources>
</PropertyGroup>
有一些注意事项 - 请在此处查看文档:https://learn.microsoft.com/en-us/aspnet/core/blazor/host-and-deploy/webassembly?view=aspnetcore-5.0#disable-integrity-checking-for-non-pwa-apps-1
blazor.boot.json
中的SHA256哈希值:请参见此处的示例,因为您的应用程序DLL具有新的签名。blazor.webassembly.js
中的Blazor引导JS将获取新的DLL并将其放入应用程序缓存中。任何未更改的DLL(例如框架库)都将从缓存中重新加载。 - Quango