2010-05-12 226 views
1

我已經構建了我的第一個MVC解決方案,並使用存儲庫模式來檢索/插入/更新我的數據庫。LINQ to SQL存儲庫 - 緩存數據

我現在正在重構的過程中,我注意到我的倉庫中的很多方法(實際上都是)每次都打到數據庫。這似乎有點矯枉過正,我理想的做法是'緩存'主要數據對象,例如'GetAllAdverts',然後查詢這個緩存對象,例如'FindAdvert(id),AddAdvert(),DeleteAdvert()等等。'

我還需要考慮更新/刪除/添加記錄到此緩存對象和數據庫。

什麼是這樣的最好的appapp?

我對這類事情的瞭解很少,並且真正在尋找建議/指導/教程來指引我朝着正確的方向發展。

在此先感謝。

+0

http://stackoverflow.com/questions/343899/how-to-cache-data-in-a-mvc - 應用#349111 – David 2010-05-12 12:51:29

回答

0

這只是我的雷達,我假設你已經解決了這個問題。但是,如果不是,我會查看預編譯的LINQ查詢。事情是這樣的:

 private static Func<SomeDataContext, int, PersonDto> _getPersonByIdQuery = 
     CompiledQuery.Compile<SomeDataContext, int, PersonDto>(
      (dataContext, personId) => 
       dataContext.PersonDtos.where(c => c.PersonId == personId).FirstOrDefault() 
       ); 

把東西像你的DataContext的裏面,然後在裏面添加一個內部方法來調用它調用它。您的檢索者/保存者然後將調用內部方法。那有意義嗎?如果需要的話我可以發佈更多的代碼..

祝你好運,

賈斯汀