ASP.NET.in.a.Nutshell.Second.Edition [Electronic resources] نسخه متنی

اینجــــا یک کتابخانه دیجیتالی است

با بیش از 100000 منبع الکترونیکی رایگان به زبان فارسی ، عربی و انگلیسی

ASP.NET.in.a.Nutshell.Second.Edition [Electronic resources] - نسخه متنی

G. andrew Duthie; matthew Macdonald

| نمايش فراداده ، افزودن یک نقد و بررسی
افزودن به کتابخانه شخصی
ارسال به دوستان
جستجو در متن کتاب
بیشتر
تنظیمات قلم

فونت

اندازه قلم

+ - پیش فرض

حالت نمایش

روز نیمروز شب
جستجو در لغت نامه
بیشتر
لیست موضوعات
توضیحات
افزودن یادداشت جدید









HttpCachePolicy

System.Web (system.web.dll)sealed class

This class allows you to configure
"page" or output caching for an
ASP.NET application, which stores a fully rendered page for automatic
reuse. A cached page will be used for GET requests until it expires,
as long as the URL request does not have different query string
arguments. A cached page will not be used for POST requests, so
postbacks (such as when a user clicks on button) will bypass the
cached page. (This behavior is slightly and mysteriously different
than just using the <OutputCache> page
directive, which always reuses the cached page for any type of
request when the VaryByParam attribute is set to
None.) To specifically modify this behavior, you
can use the VaryByParams property and the
HttpCacheVaryByParams class.

To enable caching for a page, use the SetCacheability(
)
method to set the page's visibility to
Public so it can be stored in the shared cache.
Then use the SetExpires( ) method to determine the
lifetime of the page in the cache. For example,
Response.Cache.SetExpires(DateTime.Now.AddSeconds(60));
will keep a page for 60 seconds, which is enough to make a
substantial performance difference. By default, the cache uses
absolute expiration. You can also invoke the
SetSlidingExpiration( ) method, with the parameter
True, to enable sliding expiration. In sliding
expiration, the time limit is compared to the time elapsed since the
most recent request, not the time since the first request. You can
also use the AddValidationCallback( ) method to
add a callback that decides on a page-by-page basis whether to allow
a cached page to be served. Finally, you can use fragment caching by
developing a Web Form user control for a portion of a page, and
caching just that portion using page directives or the methods of
this class.

If your page requires customization based on Session variables or
user-specific details other than a query string, you
shouldn't cache the page! In these cases, data
caching will be more useful. With data caching, you manually store
specific information, such as binary data or recordsets. For more
information on data caching, refer to the
System.Web.Caching.Cache class.

The HttpCachePolicy class is available through the
Cache property of the built-in
Response object. It replaces properties of the
Response object that were used to configure
caching in ASP (like CacheControl and
Expires). Microsoft uses somewhat confusing
nomenclature. An instance of the HttpCachePolicy
class (used to configure page caching) is available through the
built-in Response.Cache object, and the
System.Web.Caching.Cache class (used for data
caching) is available through the built-in Cache
object. Cache and
Response.Cache are not the same!

public sealed class 

HttpCachePolicy {
// Public Instance Properties
public HttpCacheVaryByHeaders

VaryByHeaders {get; }
public HttpCacheVaryByParams

VaryByParams {get; }
// Public Instance Methods
public void

AddValidationCallback (HttpCacheValidateHandler

handler , object

data );
public void

AppendCacheExtension (string

extension );
public void

SetAllowResponseInBrowserHistory (bool

allow );
public void

SetCacheability (HttpCacheability

cacheability );
public void

SetCacheability (HttpCacheability

cacheability , string

field );
public void

SetETag (string

etag );
public void

SetETagFromFileDependencies ( );
public void

SetExpires (DateTime

date );
public void

SetLastModified (DateTime

date );
public void

SetLastModifiedFromFileDependencies ( );
public void

SetMaxAge (TimeSpan

delta );
public void

SetNoServerCaching ( );
public void

SetNoStore ( );
public void

SetNoTransforms ( );
public void

SetProxyMaxAge (TimeSpan

delta );
public void

SetRevalidation (HttpCacheRevalidation

revalidation );
public void

SetSlidingExpiration (bool

slide );
public void

SetValidUntilExpires (bool

validUntilExpires );
public void

SetVaryByCustom (string

custom );
}



Returned By


HttpResponse.Cache


/ 873