【发布时间】:2020-08-27 18:33:03
【问题描述】:
在服务器端 ASP.NET 中,我们可以对 .cshtml 文件中的静态资产执行 asp-append-version=true 以自动将文件的哈希附加到文件名。但是,在 Blazor WebAssembly 中,这不起作用,这是有道理的,因为我有一个简单的 index.html 文件,它引导 Blazor 并引用静态文件,而不是服务器修改的文件。
那么在 Blazor WebAssembly 的 index.html 文件中是否有一种将哈希附加到静态文件的 URL 的好方法,其结果类似于旧的 asp-append-version=true?比如让<link href="css/site.css" rel="stylesheet" />变成<link href="css/site.css?v=1234abc..." rel="stylesheet" />,这样在部署时对site.css的修改会导致所有客户端都获取到新修改的静态文件,而不是依赖缓存?
【问题讨论】:
-
您是否考虑将 index.html 替换为服务器上的 .cshtml 页面?
-
我认为可能有一种仅限客户端的方式,但我想我可以在必要时这样做。
-
我不知道 ASP.Net Core 的其他方式。这不能在客户端完成。
-
@PatrickSzalapski 您可以在哪里尝试 .cshtml 方法?成功了吗?
-
参见docs.microsoft.com/en-us/aspnet/core/blazor/host-and-deploy/… 以及更改dll文件的文件扩展名部分。愚蠢的是,此功能无法开箱即用,因为它是 Web 编程中的最佳实践。
标签: asp.net-core blazor blazor-client-side