Кэширование на уровне хранилища в приложении Asp.net с использованием Caching Application Block - PullRequest
2 голосов
/ 02 октября 2011

В одном из моих веб-приложений я пытаюсь кэшировать некоторые ссылочные объекты, чтобы уменьшить попадания в базу данных.Я использую блок приложения Caching для реализации кэширования.Я новичок в этом, и я не уверен в его реализации.Я написал пример репозитория, чтобы использовать его.Я хочу, чтобы вы все посмотрели и прокомментировали это.

public class StatusRepository
    {
        ICacheManager statusCahce = CacheFactory.GetCacheManager(); //I am not sure whether I should initilise statusCache object here.

     public StatusEntity Get(byte statusId)
        {
            StatusCollection statusCollection = (StatusCollection)statusCahce.GetData("Statuses");
            if (statusCollection != null)
            {
                return (StatusEntity)statusCollection.StatusList.First(p=>p.StatusId==statusId);
            }
            else
            {
               // HIT Database to get the entity
            }
        }
       public StatusCollection GetStatusList()
        {
            StatusCollection statusCollection = (StatusCollection)statusCahce.GetData("Statuses");
            SqlHelper sql = new SqlHelper(true);
            if (statusCollection != null) //We have it in cache
            {
                return statusCollection;
            }
            else //Hit Database
            {

                     //Hit Database to get the StatusCollection and add that           collection to cache       

                    statusCahce.Add("Statuses", statusCollection);
                    return statusCollection;
                }
            }
        }
    }
}

Пожалуйста, дайте мне знать, как я могу улучшить его.

Пожалуйста, дайте мне знать, сколько данныхмы можем иметь в кеше.

1 Ответ

1 голос
/ 03 октября 2011

Что-то вроде это может быть полезным?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...