1. //在项目里添加一个"全局应用程序类(Global Application Class)",在里面写这样的代码:
  2. public class Global : System.Web.HttpApplication
  3. {
  4. static Timer BuildStaticPagesTimer;
  5. static object locker = new object();
  6. static int count;
  7. protected void Application_Start(object sender, EventArgs e)
  8. {
  9. //double check lock...
  10. if (BuildStaticPagesTimer == null)
  11. {
  12. lock (locker)
  13. {
  14. if (BuildStaticPagesTimer == null)
  15. {
  16. //every 20 minutes, run BuildStaticPagesTimer_Callback in every 20 minutes
  17. BuildStaticPagesTimer = new Timer(BuildStaticPagesTimer_Callback, null, 0, 20 * 60 * 1000);
  18. }
  19. }
  20. }
  21. }
  22. private static void BuildStaticPagesTimer_Callback(object state)
  23. {
  24. Dictionary<string, string> urlsNeedToBuild = GetPagesNeedToBuiltStatic();
  25. foreach (string oldUrl in urlsNeedToBuild.Keys)
  26. {
  27. string newUrl = urlsNeedToBuild[oldUrl];
  28. Build(oldUrl, newUrl);
  29. }
  30. }
  31. private static void Build(string oldUrl, string newUrl)
  32. {
  33. //在这里写生成静态页面的代码
  34. throw new NotImplementedException();
  35. }
  36. private static Dictionary<string, string> GetPagesNeedToBuiltStatic()
  37. {
  38. //在这里判断哪些页面需要生成静态页面
  39. throw new NotImplementedException();
  40. }
  41. }

asp.net配置全局应用程序类 巧妙达到定时生成静态页面的更多相关文章

  1. Asp.net 生成静态页面

    http://www.cnblogs.com/tonycall/archive/2009/07/18/1526079.html Asp.net 生成静态页面(简单用法) 第一次发表,有什么错误,请大家 ...

  2. WPF 10天修炼 第三天- Application全局应用程序类

    Application对象 当一个WPF应用程序启动时,首先会实例化一个全局唯一的Application对象,类似于WinForm下的Application类,用于控制整个应用程序,该类将用于追踪应用 ...

  3. 全局应用程序类(Global.asax)

     注:该部分参考的园区的“积少成多”的 <ASP.NET MVC中的Global.asax文件> . 1.Global.asax文件介绍 global.asax这个文件包含全局应用程序事件 ...

  4. ASP.NET MVC生成静态页面

    1.先付上封装好生成静态页的原代码: public class Common { #region 获取模板页的Html代码 /// <summary> /// 获取页面的Html代码 // ...

  5. Application全局应用程序类

    当一个WPF应用程序启动时,先会实例化一个全局的唯一的Application.如果开发人员熟悉Windows Form编程,会知道在SystemWindowsForm命名空间中有一个Applicati ...

  6. asp.net脚本获取不到id,服务器控件id生成html页面id控制

    在配置文件里修改id的生成方式.经过搜索发现是因为使用Sharpmap而在Web.config中加入的一句配置造成的影响. <pages controlRenderingCompatibilit ...

  7. asp.net获取当前页面源码并生成静态页面

    StringWriter stringWriter = new StringWriter(); HtmlTextWriter htmlWriter = new HtmlTextWriter(strin ...

  8. 微信小程序(六) 文章详情静态页面detail

    文章详情静态页面detail:

  9. ASP.NET MVC 解析模板生成静态页一(RazorEngine)

    简述 Razor是ASP.NET MVC 3中新加入的技术,以作为ASPX引擎的一个新的替代项.在早期的MVC版本中默认使用的是ASPX模板引擎,Razor在语法上的确不错,用起来非常方便,简洁的语法 ...

随机推荐

  1. 构建企业级数据湖?Azure Data Lake Storage Gen2不容错过(上)

    背景 相较传统的重量级OLAP数据仓库,“数据湖”以其数据体量大.综合成本低.支持非结构化数据.查询灵活多变等特点,受到越来越多企业的青睐,逐渐成为了现代数据平台的核心和架构范式. 数据湖的核心功能, ...

  2. 关于window.location.href 传中文参数 乱码问题

    传中文查询乱码问题 则需要对要传的参数进行二次编码 例如  window.location.href ="/xx.jsp?name="+name+""; 这样子 ...

  3. N个tomcat之间实现Session共享(写的不错,转来的)

    以下文章写的比较不错,转来的. tomcat的session共享设置如此简单为什么很少人去用.这个我说的重点. 1.自身的session如果服务器不在同一个网段会有session失效(本人使用的是阿里 ...

  4. Docker系列之镜像瘦身(五)

    前言 本节我们来讲讲在我们在构建镜像过程中不出问题,同时使得最后所构建的镜像文件大小尽可能最小,温馨提示:文中大图均可点击放大查看详细信息. 缓存(cache) Docker的优势之一在于提供了缓存, ...

  5. 9407web常用符号

    常用符号 转载自 http://www.fhdq.net/ ❤❥웃유♋☮✌☏☢☠✔☑♚▲♪✈✞÷↑↓◆◇⊙■□△▽¿─│♥❣♂♀☿Ⓐ✍✉☣☤✘☒♛▼♫⌘☪≍←→◈◎☉★☆⊿※¡━┃♡ღツ☼☁❅♒✎©® ...

  6. Docker学习总结(五)--迁移与备份

    将容器保存为镜像 docker commit myNginx mynginx_i 镜像备份 docker save -o myNginx.tar myNginx_i 镜像恢复 docker load ...

  7. Spring学习之旅(十五)--SpringBoot

    在使用 Spring 的过程中,有时候会出现一些 ClassNotFoundException 异常,这是因为 JAR 依赖之间的版本不匹配所导致的.而 Spring Boot 就能避免绝大多数依赖版 ...

  8. JavaScript中几种常见的兼容问题及解决方案

    在js中好用的东西一般都存在兼容问题,以下,我整理了一些常用的兼容处理方法,自己用的时候可以把他们放在一个JS文件中,需要用到时候直接引入,会比较方便. 一.获取非行内样式 function getS ...

  9. 2019年7-8月Leetcode每日训练日志

    2019-08-29 #274 H指数 2019-08-28 #287 寻找重复数 #875 爱吃香蕉的珂珂 #704 二分查找 2019-08-27 #744 寻找比目标字母大的最小字母 #225 ...

  10. Badboy - 从excel中读取数据

    参考: http://leafwf.blog.51cto.com/872759/1119161 http://www.51testing.com/html/00/130600-1367743.html ...