aspx 保存 html,如何将.aspx转换成静态的HTML

08882386baeb943f02eddb75c07879ac.png

哆啦的时光机

静态页技术大致有两种方式:

一)

伪静态,或者更专业点 叫做 url rewrite. asp.net中你可以选择一些开源组件进行重写url.

文章以及代码资源:

1)http://msdn.microsoft.com/zh-cn/library/ms972974.aspx

http://blog.csdn.net/showmy/archive/2007/11/01/1861400.aspx

下载地址1:http://www.rickel.cn/uploads/DevTools/MSDNURLRewriting.msi下载地址2:download.microsoft.com/download/0/4/6/0463611e-a3f9-490d-a08c-877a83b797cf/MSDNURLRewriting.msi2)

http://urlrewriter.net/

当然还有其他的,更当然你可以自己写,主要运用asp.net管道机制,httpmodule.具体知识,你可以搜索啦.

二)

基于服务器访问压力,在服务器端生成纯静态html页面.,或者基于模板技术,生成静态页面.也就是静态页面里面有类似标签的东西,你自己写正则表达式进行替换.这个主要是原理,当然你可以参考使用一些开源模板引擎.

开源资源:

1)

stringtemplate

http://www.antlr.org/wiki/display/ST/Five+minute+Introduction

http://www.stringtemplate.org/download.html

2)

http://nvelocity.sourceforge.net/

你也可以看看一些开源的项目进行学习,比如discuz等.

下面提供的简单实现原理.

//源码是替换掉模板中的特征字符

string mbPath = Server.MapPath("template.htm");Encoding code = Encoding.GetEncoding("gb2312");StreamReader sr = null;StreamWriter sw = null;string str = null;

//读取try{sr = new StreamReader(mbPath, code);str = sr.ReadToEnd();

}catch (Exception ex){throw ex;}finally{sr.Close();}string fileName = DateTime.Now.ToString("yyyyMMddHHmmss") + ".html";str = str.Replace("$title$", txtTitle.Text);//替换Titlestr = str.Replace("$content$", txtContent.Text);//替换content//生成静态文件try{sw = new StreamWriter(Server.MapPath("html/") + fileName, false, code);sw.Write(str);sw.Flush();

}catch (Exception ex){}finally{sw.Close();Response.Write("恭喜" + fileName + "已经生成,保存在html文件夹下!");}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值