Wednesday, May 2, 2012

Caching Techniques in Sharepoint


public void ListItemCache()
{
   SPListItemCollection spListItemsObject;

   spListItemsObject = (SPListItemCollection)Cache["ListItemCacheName"];
   if(spListItemsObject == null)
   {
      spListItemsObject = DoQueryToReturnItems();
      Cache.Add("ListItemCacheName", spListItemsObject, ..);
   }
}




If you need thread safe code the try following :


private static object _lock =  new object();

public void CacheData()
{
   SPListItemCollection spListItemsObject;
       spListItemsObject = (SPListItemCollection)Cache["ListItemCacheName"];
      if(spListItemsObject == null)
      {
         lock (_lock)
         {
              // Ensure that the data was not loaded by a concurrent thread
              spListItemsObject = (SPListItemCollection)Cache["ListItemCacheName"];
              if (spListItemsObject == null)
              {
                   spListItemsObject = DoQueryToReturnItems();
                   Cache.Add("ListItemCacheName", spListItemsObject, ..);
              }
         }
     }
}


No comments:

Post a Comment

Thank you for Commenting Will reply soon ......

Featured Posts

🎬 Installing Kali Linux on a Virtual Machine | Step-by-Step Guide 🐧

🎬 In this video, I’ll show you how to install Kali Linux 🐧 inside a Virtual Machine step-by-step! Whether you're a beginner curious...