/// <summary>
        /// Adds the given <see cref="Microsoft.SharePoint.SPListItem"/> object to the cache.
        /// </summary>
        /// <param name="listItem">List item object.</param>
        /// <returns>An <see cref="Microsoft.SharePoint.SPListItem"/> object in cache. Returned object is not necessary the same instance as the given one.</returns>
        /// <exception cref="System.ArgumentNullException">Throws when input parameter <paramref name="listItem"/> is null.</exception>
        public SPListItem AddListItem(SPListItem listItem)
        {
            CommonHelper.ConfirmNotNull(listItem, "listItem");
            SPListItemLookupKey lookupKey = new SPListItemLookupKey(listItem);

            return(GetOrAdd(lookupKey, listItem));
        }
Example #2
0
        /// <summary>
        /// Gets an <see cref="Microsoft.SharePoint.SPListItem"/> object of the specified list item ID, under specified site and list.
        /// </summary>
        /// <param name="webId">Site GUID.</param>
        /// <param name="listId">List GUID.</param>
        /// <param name="listItemId">List item ID.</param>
        /// <returns>An <see cref="Microsoft.SharePoint.SPList"/> object in cache. NULL if site or list of given GUID does not exist, or list item of given ID does not exist in list.</returns>
        public SPListItem GetListItem(Guid webId, Guid listId, int listItemId)
        {
            SPListItemLookupKey lookupKey = new SPListItemLookupKey(listId, listItemId);

            return(GetOrAdd(lookupKey, () => GetList(webId, listId).GetItemById(listItemId)));
        }