Заметка
Доступ к этой странице требует авторизации. Вы можете попробовать войти в систему или изменить каталог.
Доступ к этой странице требует авторизации. Вы можете попробовать сменить директорию.
Политики кэша на основе расположения позволяют приложению явно определять поведение кэширования на основе расположения запрошенного ресурса. В этом разделе показано, как установить политику кэша программным способом. Сведения о настройке политики для приложения с помощью файлов конфигурации см. в разделе <requestCaching> "Элемент (Параметры сети)".
Настройка политики кэша на основе расположения для приложения
RequestCachePolicy Создайте объект или HttpRequestCachePolicy.
Задайте объект политики в качестве объекта политики по умолчанию для домена приложения.
Установка политики, которая принимает запрошенные ресурсы из кэша
Создайте политику, которая принимает запрошенные ресурсы из кэша, если он доступен, и в противном случае отправляет запросы на сервер, задав уровень кэша в значение CacheIfAvailable. Запрос может выполняться любым кэшем между клиентом и сервером, включая удаленные кэши.
public static void UseCacheIfAvailable() { HttpRequestCachePolicy policy = new HttpRequestCachePolicy (HttpRequestCacheLevel.CacheIfAvailable); HttpWebRequest.DefaultCachePolicy = policy; }Public Shared Sub UseCacheIfAvailable() Dim policy As New HttpRequestCachePolicy _ (HttpRequestCacheLevel.CacheIfAvailable) HttpWebRequest.DefaultCachePolicy = policy End Sub
Чтобы установить политику, которая предотвращает использование ресурсов из кэша
Создайте политику, которая не позволяет кэшу предоставлять запрошенные ресурсы, задав для уровня кэша значение NoCacheNoStore. Этот уровень политики удаляет ресурс из локального кэша, если он присутствует, указывая удаленным кэшам, что они также должны удалить этот ресурс.
public static void DoNotUseCache() { HttpRequestCachePolicy policy = new HttpRequestCachePolicy (HttpRequestCacheLevel.NoCacheNoStore); HttpWebRequest.DefaultCachePolicy = policy; }Public Shared Sub DoNotUseCache() Dim policy As New HttpRequestCachePolicy _ (HttpRequestCacheLevel.NoCacheNoStore) HttpWebRequest.DefaultCachePolicy = policy End Sub
Установка политики, возвращающей запрошенные ресурсы, только если они находятся в локальном кэше
Создайте политику, которая возвращает запрошенные ресурсы, только если они находятся в локальном кэше, задав уровень кэша в значение CacheOnly. Если запрошенный ресурс не находится в кэше, возникает исключение WebException.
public static void OnlyUseCache() { HttpRequestCachePolicy policy = new HttpRequestCachePolicy (HttpRequestCacheLevel.CacheOnly); HttpWebRequest.DefaultCachePolicy = policy; }Public Shared Sub OnlyUseCache() Dim policy As New HttpRequestCachePolicy _ (HttpRequestCacheLevel.CacheOnly) HttpWebRequest.DefaultCachePolicy = policy End Sub
Установка политики, которая запрещает локальному кэшу предоставлять ресурсы
Создайте политику, которая не позволяет локальному кэшу предоставлять запрошенные ресурсы, задав для уровня кэша значение Refresh. Если запрошенный ресурс находится в промежуточном кэше и успешно обновлен, промежуточный кэш может предоставить запрошенный ресурс.
public static void DoNotUseLocalCache() { HttpRequestCachePolicy policy = new HttpRequestCachePolicy (HttpRequestCacheLevel.Refresh); HttpWebRequest.DefaultCachePolicy = policy; }Public Shared Sub DoNotUseLocalCache() Dim policy As New HttpRequestCachePolicy _ (HttpRequestCacheLevel.Refresh) HttpWebRequest.DefaultCachePolicy = policy End Sub
Установка политики, которая не позволяет кэшу предоставлять запрошенные ресурсы
Создайте политику, которая не позволяет кэшу предоставлять запрошенные ресурсы, задав для уровня кэша значение Reload. Ресурс, возвращаемый сервером, может храниться в кэше.
public static void SendToServer() { HttpRequestCachePolicy policy = new HttpRequestCachePolicy (HttpRequestCacheLevel.Reload); HttpWebRequest.DefaultCachePolicy = policy; }Public Shared Sub SendToServer() Dim policy As New HttpRequestCachePolicy _ (HttpRequestCacheLevel.Reload) HttpWebRequest.DefaultCachePolicy = policy End Sub
Установка политики, которая позволяет кэшу предоставлять запрошенные ресурсы, если ресурс на сервере не является более новым, чем кэшированное копирование
Создайте политику, которая позволяет кэшу предоставлять запрошенные ресурсы, если ресурс на сервере не является более новым, чем кэшированная копия, задав для уровня кэша значение Revalidate.
public static void CheckServer() { HttpRequestCachePolicy policy = new HttpRequestCachePolicy (HttpRequestCacheLevel.Revalidate); HttpWebRequest.DefaultCachePolicy = policy; }Public Shared Sub CheckServer() Dim policy As New HttpRequestCachePolicy _ (HttpRequestCacheLevel.Revalidate) HttpWebRequest.DefaultCachePolicy = policy End Sub