2017-06-10 151 views
1

我有一个简单的网站,主要是使用没有仪式剃刀意见处理一堆静态页面的布局。这是一个天蓝色的网络应用程序。该网页似乎加载慢一点比我喜欢(天青有慢I/O),我不知道是否有缓存所有这些反应,因为他们并不真正需要编译后在所有待处理的方式。ServiceStack缓存没有仪式剃须刀

回答

1

no ceremony razor pages直接执行,不通过正常的请求管道走,所以没有机会缓存​​它们的输出。

你需要做这样的事情通过其移动到文件夹/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; 
} 

这将缓存1小时以上的网页HTML响应输出。

+0

这就是我是“怕”的!这(缓存它们的能力)将是一个很好的补充,因为它们在静态页面上显着缓慢。 – lucuma

+0

@lucuma如果网页大多是静态的,你可以使用[静态HTML文件+ Ajax请求(https://github.com/ServiceStackApps/EmailContacts#loaded-via-ajax)有更好的表现,'default.html'页面将是可缓存的,您可以将缓存应用于JSON服务以使其更快。 – mythz

+0

当然。我只是试图保持简单,尽管在这种情况下简单的spa可能会更简单。已经将其转换为简单又快速的服务。感谢您的反馈。 – lucuma