asp.net mvc浏览器缓存和压缩的实现
cache在开发高可扩展性的web应用中起着至关重要的作用,我们可以按照预定的时间将任何get请求缓存到浏览器中,如果在预定的时间内用户请求同一URL那么response就会通过浏览器的cache来实现而非server。可以通过下面的action filter在ASP.NET MVC应用中实现同样的功能:
using System;
using System.Web;
using System.Web.Mvc;
public class CacheFilterAttribute: ActionFilterAttribute
{
/// <summary>
/// Get or sets the cache duration in seconds . the default is 10 seconds
/// </summary>
/// <value> the cache duration in seconds </value>
public int Duration
{
get;
set;
}
public CacheFilterAttribute()
{
Duration = 10;
}
public override void OnActionExecuted(FiterExecutedContext filterContext)
{
if (Duration <= 0) return;
HttpCachePolicy cache = fiterContext.HttpContext.Response.Cache;
TimeSpan cacheDuration = TimeSpan.fromSeconds(Duration);
&
相关文档:
Web页面是无状态的, 服务器对每一次请求都认为来自不同用户,因此,变量的状态在连续对同一页面的多次请求之间或在页面跳转时不会被保留。在用ASP.NET 设计开发一个Web系统时, 遇到一个重要的问题是如何保证数据在页面间进行正确、安全和高效地传送,Asp.net 提供了状态管理等多种技术来解决保存和传 ......
IIS处理页面的运行机制:
IIS自身是不能处理像ASPX扩展名这样的页面,只能直接请求像HTML这样的静态文件,之所以能处理ASPX这样扩展名的页面,是因为IIS有一个ISAPI过滤器,它是一个COM组件。ASP.NET服务在注册到IIS的时候,就会添加一个Win32的扩展动态库aspnet_isapi.dll。并将扩展可以处理的页面扩展名(如ASPX ......
http://rzchina.net/node/3210
Web.config文件中可配置的身份验证方式有Windows、Forms、PassPort、None。
Web.config文件中<authentication>节点,身份验证方式取决于该节点“mode”属性的设置。
1.None
None表示不执行身份验证。
2.Windows
IIS根据应用程序的设置执行身份验证,其中包含匿名身份 ......