Table of Contents

Кэширование

В ASP.NET используются два основных типа кэширования:

Рассмотрим возможности их применения в проекте QP7.

Кэширование вывода

Реализуется с помощью директивы OutputCache на вкладке Presentation поля Format на странице свойств формата. В этом случае используется кэширование вывода на уровне пользовательских контролов. Необходимо учесть, что данный вариант подходит не всегда и не для всех объектов, так как в случае получения информации из кэша Code Behind выполняться не будет, что может быть неприемлемо.

Обычный синтаксис:

<%@ OutputCache Duration="100" VaryByParam="location;count" %>

Замечания:

Кэширование данных

Реализуется по-разному в зависимости от того, как осуществляется доступ к данным.

Publishing Container

В свойствах контейнера есть настройки кэширования. В качестве ключа кэширования используется полная совокупность параметров хранимой процедуры (qp_GetContentPage), использующейся для получения данных.

QP7 Cache API

Доступно в виде экземплярных методов в классе DBConnector. Используется для кэширования результатов SQL-запросов, коллекций LINQ-to-SQL объектов и произвольных объектов. Более подробное описание здесь.