Главная » Статьи » Visual Basic » Библиотека Visual Basic

@ OutputCache
Декларативно управляет политиками кэширования выходного потока страницы ASP.NET или находящегося на странице пользовательского элемента управления.

<%@ OutputCache Duration="#ofseconds"
   Location="Any | Client | Downstream | Server | None |
     ServerAndClient "
   Shared="True | False"
   VaryByControl="controlname"
   VaryByCustom="browser | customstring"
   VaryByHeader="headers"
   VaryByParam="parametername"
   VaryByContentEncoding="encodings"
   CacheProfile="cache profile name | ''"
   NoStore="true | false"
   SqlDependency="database/table name pair | CommandNotification"
%>


Атрибуты

Duration

Время кэширования страницы или пользовательского элемента управления (в секундах).Установка этого атрибута на странице или в пользовательском элементе управления создает срок действия для ответных HTTP-сообщений объекта и автоматически кэширует выходной поток страницы или пользовательского элемента управления.

Примечание
Это обязательный атрибут.Если он не будет указан, то произойдет ошибка анализатора.

Location

Одно из значений перечисления OutputCacheLocation. По умолчанию используется значение Any.

Примечание
Этот атрибут не поддерживается для директив @ OutputCache, включенных в пользовательские элементы управления (ASCX-файлы).

CacheProfile

Имя набора параметров кэширования для страницы.Это необязательный атрибут. Значение этого атрибута по умолчанию — пустая строка ("").

Примечание
Этот атрибут не поддерживается для директив @ OutputCache, включенных в пользовательские элементы управления (ASCX-файлы). Это значение (если оно указано на странице) должно соответствовать имени одной из доступных записей элемента outputCacheProfiles в разделе outputCacheSettings . Если это имя не соответствует элементу профиля, вызывается исключение.

NoStore

Логическое значение, определяющее, следует ли запретить хранение конфиденциальных данных на дополнительных накопителях.

Примечание
Этот атрибут не поддерживается для директив @ OutputCache, включенных в пользовательские элементы управления (ASCX-файлы). Значение true этого атрибута эквивалентно выполнению во время запроса приведенного ниже кода:

Response.Cache.SetNoStore();

Shared

Логическое значение, определяющее, может ли выходной поток пользовательского элемента управления совместно использоваться несколькими страницами.Значение по умолчанию: false. Дополнительные сведения см. в разделе "Заметки".

Примечание
Этот атрибут не поддерживается для директив @ OutputCache, включенных в страницы ASP.NET (ASPX-файлы)

SqlDependency

Строковое значение, содержащее список пар имен баз данных и таблиц, от содержимого которых зависит кэш вывода страницы или элемента управления.Обратите внимание, что класс SqlCacheDependency проверяет таблицу в базе данных, от которой зависит кэш вывода. Таким образом, когда обновляются элементы таблицы, они удаляются из кэша при табличном опросе. При использовании уведомлений (в Microsoft SQL Server 2005) со значением CommandNotification, в конечном счете, используется класс SqlDependency для регистрации уведомлений о запросах на сервере SQL Server 2005.

Примечание
Значение CommandNotification атрибута SqlDependency допустимо только на веб-страницах (ASPX). Пользовательские элементы управления могут использовать табличный опрос только с помощью директивы @ OutputCache .

VaryByCustom

Произвольный текст, представляющий пользовательские требования по кэшированию выходного потока.Если атрибут имеет значение browser, значения в кэше изменяются в зависимости от обозревателя и основных сведений о версии. Если введена специализированная строка, необходимо переопределить метод GetVaryByCustomString в файле Global.asax приложения.

VaryByHeader

Разделяемый точками с запятой список HTTP-заголовков, используемых для изменения кэша выходного потока.Если в качестве значения этого атрибута задано несколько заголовков, то кэш выходного потока содержит различные версии запрашиваемого документа для каждой комбинации указанных заголовков.

Примечание
Значение атрибута VaryByHeader включает кэширующие элементы во всех кэшах HTTP версии 1.1, а не только кэш ASP.NET. Этот атрибут не поддерживается в директивах @ OutputCache в пользовательских элементах управления.

VaryByParam

Разделяемый точками с запятой список строк, используемых для изменения кэша выходного потока.По умолчанию эти строки соответствуют значению строки запроса, отправленному с атрибутами метода GET, или параметру, отправленному при помощи метода POST. Если в качестве значения этого атрибута задано несколько параметров, то кэш выходного потока содержит различные версии запрашиваемого документа для каждой комбинации указанных параметров.Возможными значениями являются none, звездочка ( *) и любая допустимая строка запроса или имя параметра POST.

Внимание
Этот атрибут или атрибут VaryByControl обязателен, если используется директива @ OutputCache на страницах ASP.NET и в пользовательских элементах управления. В случае его отсутствия произойдет ошибка анализатора.Если для изменения кэшированного содержимого указывать параметр нежелательно, следует указать значение none. Если кэш выходных данных должен зависеть от значений всех параметров запроса, установите в качестве значения атрибута звездочку ( *).

VaryByControl

Разделяемый точками с запятой список строк, используемых для изменения кэша выходного потока пользовательского элемента управления.Эти строки представляют значения свойства ID серверных элементов управления ASP.NET, объявленных в пользовательском элементе управления.

Примечание
Этот атрибут или атрибут VaryByParam обязателен, если используется директива @ OutputCache на страницах ASP.NET и в пользовательских элементах управления.

VaryByContentEncodings

Разделяемый точками с запятой список строк, используемых для изменения кэша выходного потока.Атрибут VaryByContentEncodings используется с заголовком Accept-Encoding для определения того, как кэшированные ответы обслуживаются различными кодировками содержимого.

Заметки

Настройка значений кэша выходного потока страницы идентична управлению методом SetExpires и SetCacheability с помощью свойства Cache .

Если для просмотра пользователем страницы Web Forms требуется авторизация, выходной кэш устанавливает значение private для заголовка HTTP Cache-Control .

Если атрибут Shared имеет значение true, выходной поток пользовательского элемента управления может быть доступен для нескольких страниц Web Forms. Если свойству не задано значение true, по умолчанию кэшируется отдельная версия выходных данных пользовательского элемента управления для каждой страницы, содержащей этот пользовательский элемент управления. Установка атрибута Shared может потенциально сэкономить значительный объем памяти.

Пример

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

<%@ OutputCache Duration="100" VaryByParam="none" %>

В следующем примере кода демонстрируется, как устанавливать кэширование выходного потока страницы или пользовательского элемента управления на основе параметров формы count или location, извлекаемых из метода формы POST или из строки запроса. Каждый HTTP-запрос с новым значением параметра location или count (или с новым значением обоих параметров) кэшируется на протяжении 10 секунд.Результат любых последующих запросов с теми же значениями параметров будет извлекаться из кэша, пока не истечет срок действия записи.

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




Источник: http://expert1.ucoz.com/
Категория: Библиотека Visual Basic | Добавил: hitman (05.04.2012)
Просмотров: 1264 | Комментарии: 1 | Теги: vb library | Рейтинг: 0.0/0
Всего комментариев: 0
Имя *:
Email *:
Код *: