2017-06-10 91 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