aspx页面生成静态页面 - 技术文档 - 解决方案 - 重庆猫扑网络科技有限公司

河南彩票

  • aspx页面生成静态页面

  • 当前位置:网站河南彩票  >  技术文档      新闻来源:本站    发布者:    发布时间:2009-10-16

先定义一个StaticFileCacheModule

实现IHttpModule接口

定制BeginRequest事件 

public class StaticFileCacheModuleIHttpModule

{

河南彩票 public void Init(HttpApplication context)

{

河南彩票 context.BeginRequest += new EventHandler(context_BeginRequest);

}

private void context_BeginRequest(object sender, EventArgs e)

{

河南彩票 HttpContext context = ((HttpApplication)sender)Context;

河南彩票 //判断是否需要处理

if (context.Request.AppRelativeCurrentExecutionFilePath.ToLower().EndsWith(".aspx"))

{

河南彩票 string fileUrl = "~/CacheFile/";

string fileName = GetFileName(context);

河南彩票 string filePath = context.Server.MapPath(fileUrl) + fileName;

河南彩票 if (File.Exists(filePath))

{

//如果静态缓存文件存在,直接返回缓存文件

context.RewritePath(fileUrl + fileName false);

}

}

}

河南彩票 public static string GetFileName(HttpContext context)

{

//我们的缓存文件名由页面文件名加上查询字符串组成

return context.Request.AppRelativeCurrentExecutionFilePath.ToLower()

河南彩票 .Replace(".aspx", "").Replace("~/", "").Split('/')[context.Request.AppRelativeCurrentExecutionFilePath.ToLower()

.Replace(".aspx", "").Replace("~/", "").Split('/').Length-1]

+ context.Request.Url.Query.Replace("?", "__").Replace("&", "_") + "html";

}


public void Dispose() 

 

  • 河南彩票Copyright © 2015 重庆猫扑网络科技有限公司

    杏彩计划-主页 皇马彩票-主页 凤凰体彩-主页 一定牛彩票-主页 体彩屋-主页 诚信娱乐-主页 159彩票网-主页 聚恒彩票-主页