ورود

View Full Version : Caching Data



sarina
دوشنبه 27 آبان 1387, 15:23 عصر
با سلام
ما یک پروژه Widows Application داریم که میخواهیم دیتاهای مربوط به جداول پایه که در کامپوننت های مختلف load میشوند از Cache خوانده شوند(تا زمانی که Update) نشده اند
آیا کسی در مورد مکانیزمهای Cache اطلاعاتی داره که منو راهنمایی کنه
با تشکر

کسی در این مورد ایده ای نداشت؟

علیرضا مداح
دوشنبه 27 آبان 1387, 15:38 عصر
سلام دوست عزیز،
بر روی Local Database Cache مطالعه نمایید :
Walkthrough: Adding a Local Database Cache to an N-Tier Application (http://msdn.microsoft.com/en-us/library/bb882690.aspx)

برای راهنمایی بهتر ، لطفا" سناریو را دقیقتر شرح دهید ،/

sarina
چهارشنبه 29 آبان 1387, 13:26 عصر
سلام تا اونجایی که من فهمیدم کلاسی که شما معرفی کردید برای ADO.NET بکار میره
من بیشتر بدنبال یک مکانیزم (یا روش ) برای این کار هستم جدای از اینکه در لایه دیتا از چه تکنولوژی استفاده کرده باشیم.
برای توضیح بیشتر باید بگم
میخوام اطلاعات برخی از جداول دیتا بیس در یک جایی CACHE شده و تا زمانی که در دیتا بیس تغییری بر روی این دیتا ها ایجاد نشه برای خواندن آنها از CACHe مربوطه استفاده بشه
بیشتر جداول اطلاعات پایه ( مانند شهرها) مد نظرمه.
نحوه کار و یا روشها ی مختلفی ممکنه برای این کار باشه ولی میخواستم با ایده های مختلف دوستان آشنا شم یا اگه رفرنسی سراغ دارن معرفی کنند

علیرضا مداح
چهارشنبه 29 آبان 1387, 15:45 عصر
شوی آموزشی زیر را مشاهده نمایید :
Offline Data Synchronization Services in Visual Studio 2008 (http://channel9.msdn.com/posts/funkyonex/Offline-Data-Synchronization-Services-in-Visual-Studio-2008/)

همچنین میتوانید هنگام لود شدن برنامه ، جداول پایه را به طورموقت نگه داشته و توسط Query Notifications ، هنگامیکه اطلاعات این جداول تغییر کرد ، آنها را مجددا" پر کنید :
Implementing SQL Server 2005 Query Notifications in C# Windows Application (http://support.microsoft.com/kb/555893)

،/

sarina
چهارشنبه 06 آذر 1387, 11:09 صبح
آقای مداح ما در پروژه در لایه دیتا از تکنولوژی ADO.Net استفاده نمیکنیم .بلکه از ابزار LLBLGEN استفاده میکنیم
فکر نمیکنیم QUeryNotiFication بتونه کمکی کنه چون اساسش بر اینه که از ADO.Net استفاده شده باشه آیا راه حل دیگری دارید؟