我们目前正在将网站从.net mvc 5迁移到.net核心,并在此过程中尝试实现有关如何在我们的网站上使用服务工作者的新想法。
基本上,根据请求的路线,正文和布局将返回完全渲染的状态,或者将在正常情况下会渲染部分的位置以字符串形式返回。如果服务工作者在返回的请求中遇到这些字符串中的任何一个,它将用已经缓存过客户端的相应部分替换该字符串,如果没有该字符串,它将仅针对该部分向服务器发送请求
我们需要的是一种通过字符串(包括引用部分)进行缓存清除的方法。理想情况下,我们将基于上次修改部分.cshtml文件(或部分哈希值)的版本来对字符串进行版本控制。通常,使用html帮助器来缓存清除静态文件和图像的操作类似。
问题是我无法使用静态html帮助程序扩展名获取部分文件的最后写入时间。通过简单地获取文件的路径然后使用File.GetLastWriteTime()
,它对于wwwroot文件夹中的静态资源非常有效,但是我不清楚是否可以用相同的方法来获取.cshtml部分文件的最后写入时间。 / p>
在给定局部视图名称的情况下,如何编写一个HTML帮助程序扩展名,该扩展程序将根据局部视图文件的上次写入时间插入一个字符串?