我們有一個在linq to sql中實現的項目,並且正在使用適配器模式遷移到LLBLGenPro運行時。在LLBLGENPro中緩存
該應用程序的第一個版本做了大量的緩存,將整個表放入httpcache中,然後在代碼隱藏中完成所有鏈接。 (嘆氣)
所以你喜歡的東西:現在
from p in MyCacheObject.ProductPages
join cmpp in MyCacheObject.ProductContentMemberships on p.ProductPageId equals cmpp.ProductContentId
join pl in MyCacheObject.ProductPlans on cmpp.ProductLinkId equals pl.ProductPlanId
,在我們的新庫的模式,我可以建立這樣的連接與預取路徑。您只需調用myRepository.GetProductPagesWithContentMemberships()並獲得一個ProductPage實體和一個ProductContentMemberships集合。
當我們談論數據庫時,這非常棒,但是我有時候如何從一組緩存實體中抽取數據呢?我想緩存這些表格,然後使用它們來構建我的複雜對象。
我可以讓「從緩存中獲取」與「從數據庫中獲取」做出回購可以做出的決定,但我希望我不必編寫兩個完全不同的GetProductPagesWithContentMemberships()實現:從數據庫和一個使用緩存。
我希望有一種神奇的適配器,我可以使用它將執行我的linq對象緩存而不是將其發送到SQL服務器。有這樣的事嗎?
這篇文章:http://www.llblgen.com/tinyforum/Messages.aspx?ThreadID=6265暗示這是可能的,但就是這樣。
你有沒有問過這個在LLBLGEN支持論壇 - 你應該得到的支持團隊的一個相當快速的響應。 – Matt 2010-10-19 20:23:52
我辯論過,因爲我知道法蘭斯讀取堆棧 – 2010-10-19 20:44:09