zoukankan      html  css  js  c++  java
  • Asp.net 2.0 中将网站首页生成静态页的一个比较好的方法

    做网站时,有时为了提高性能会将网站首页生成静态页(当然, Asp.net中页面缓存也是一个不错的选择了
    以下的方法来自 "孟子E " 解释的方法

    代码如下

        protected override void Render(HtmlTextWriter writer)
        ...{
            System.IO.StringWriter html = new System.IO.StringWriter();
            System.Web.UI.HtmlTextWriter tw = new HtmlTextWriter(html);
            base.Render(tw);
            System.IO.StreamWriter sw = new System.IO.StreamWriter(Server.MapPath("index.html"), false, System.Text.Encoding.Default);
            sw.Write(html.ToString());
            sw.Close();
            tw.Close();
            Response.Write("页面生成成功!");
        }
    将以上上函数数加如到你要生成静太文件的页面里,
    函数从载了,Render函数 作用是把页面的 html文本截下来,保存到文件里,
    进一步的可以去看一下asp.net页面生命过程.

     
    静态页面的生成 

    protected override void Render(HtmlTextWriter writer) {
         StreamWriter r=new StreamWriter(Server.MapPath(StaticFileName),
               false,System.Text.Encoding.UTF8);  //StaticFileName是html文件名
         HtmlTextWriter h=new HtmlTextWriter(r);
         base.Render(h); 
         r.Close();
         h.Close();
         Response.Redirect(StaticFileName);
    }

    然后在同一aspx的pageLoad事件中判断StaticFileName是否已经存在,如果存在,就应该直接转向,不应该继续生成页面了。 

  • 相关阅读:
    数据库中char、varchar、varchar2、nvarchar之间的关系
    Oracle中scott用户下基本表练习SQL语句
    判断一个数是否是素数
    阿里P7前端需要哪些技能
    react Native 踩坑记录
    流程节点(2018.7.31)
    在centos7下手工安装和配置Nginx
    微信公众号开发
    nodejs 实战
    数据库权限表的设计
  • 原文地址:https://www.cnblogs.com/befer/p/4943514.html
Copyright © 2011-2022 走看看