我有一个简单的网站,它主要使用无仪式剃刀视图来处理一堆静态页面的布局。这是在一个天蓝色的网络应用程序上。这些页面的加载速度似乎比我喜欢的要慢一些(Azure 的 I/O 速度很慢),我想知道是否有办法缓存所有这些响应,因为它们在编译后根本不需要处理。
问问题
29 次
1 回答
1
无仪式剃须刀页面直接执行,不通过正常的请求管道,因此没有机会缓存它们的输出。
您需要通过将其移动到/Views
文件夹来将其转换为 Razor 视图,创建与页面同名的请求 DTO,然后[CacheResponse]
在服务上添加一个属性,例如:
[Route("/pagename1")] class PageName1 {}
[Route("/pagename2")] class PageName2 {}
[CacheResponse(Duration = 3600)]
public class HtmlServices : Service
{
public object Any(PageName1 request) => request;
public object Any(PageName2 request) => request;
}
这会将上述页面的 HTML 响应输出缓存 1 小时。
于 2017-06-10T06:47:09.837 回答