首页 | 编程语言 | 网站建设 | 游戏天堂 | 冲浪宝典 | 网络安全 | 操作系统 | 软件时空 | 硬件指南 | 病毒相关 | IT 认证
软讯网络 > 编程语言 > .NET > C#.NET > 将动态aspx页面转换成为静态html页面的几种方法
【标  题】:将动态aspx页面转换成为静态html页面的几种方法
【关键字】:aspx,html
【来  源】:http://blog.csdn.net/nhpyliner/archive/2006/12/08/1435159.aspx

将动态aspx页面转换成为静态html页面的几种方法

1.         模版法

该方法历史悠久,具体处理流程为采用一个html模版,将其中的关键字替换为我们希望的信息。

优点:

缺点: 所有的信息都要采取字符串批凑的方式来实现,比如需要一个列表,就需要拼凑字符串。问题是开发周期长,可扩展性非常差,而且不易维护,难修改。

文章参考:

Asp.NET 生成静态页

http://www.codefans.com/ArticleView/Article_6691.html

 

 

2.         截取Control.Render()中的HtmlTextWriter的数据。

优点:

该方法比较方便而且灵活,在开发中不必顾虑动态和静态页面的统一处理模式。基本上按照动态页面的处理过程处理就Ok了。

并可在转换为静态html页面的时候过滤掉一些多余的数据及在适当的地方插入数据。

 

数据插入可考虑采取在静态页面中做标记的处理方式,如<!—Content Beginà一些正文<!--Content End  --> ,采取判断<!-- Content End  -->标记的方式将需要加入的数据加入到该标记的前面,也可利用该方法替换掉一些在动态页面中做好<!-- -->标记的原本用于动态回发等处理的逻辑。

文章参照:

How to freeze a dynamic aspx page into a static html page (on the server).

http://30649.aspx.codebetter.com/blogs/peter.van.ooijen/archive/2004/11/01/30649.aspx

 

方案架构一:

l         通过一个动态aspx转换html生成器页面来负责生成静态的页面。针对帖子Topic和论坛列表都有各自的Generator程序。Generator程序为aspx类型!执行时,将通过一定的验证模式验证操作是否合法。

l         通过一个后台线程或者Windows服务来跟踪数据库中已经标记好的尚未生成或者已经更新的但是也尚未静态化的数据列表,通过WebRequest来访问静态页面生成器程序,通过一定的参数形式将欲生成的数据标识和生成动作通知给生成器Generator

l         Generator验证请求是否合法,然后执行生成动作,将动态网页生成为静态html页面。

方案架构二:

l         论坛下的大部分动态aspx页面其实都继承自一个页面生成器基类,该基类正常状态下是不激活的。该基类含有能够生成静态html的操作函数。

l         通过一个后台线程或者Windows服务来跟踪数据库中已经创建或更新的数据,根据数据的内容通过WebRequest来访问动态网页的内容,并加上特殊的启动生成器基类生成数据的标记(该标记可为加密的验证逻辑)。

l         动态页面根据请求启动生成html的功能,通过指定的处理类将相应的静态文件生成到与其路径完全相同的路径下。

如处理TopicView.aspx的生成静态html的类通过TopicViewHtmlGenerator类来处理。

l         该架构设计灵感参照淘宝的架构而来。

静态页面:

http://list.taobao.com/browse/14-50003770-1403/t-g,giydcmjuhiytanbxg4--g,giydcmjuhlep3ugh------------2---------40-list-commend-0-all-1403.htm

动态页面:

http://list.taobao.com/browse/14-50003770-1403/t-g,giydcmjuhiytanbxg4--g,giydcmjuhlep3ugh------------2---------40-list-commend-0-all-1403.jhtml

l         该架构的优点:

与动态网页结合,开发上的顾虑减轻,代码重复劳动减少,保持面向对象特征。

 
安装Mysql Connector/NET on Windows 5.0.2 beta:【上一篇】
WinForm设计之SQLServer登录窗体:【下一篇】
【相关文章】
  • HTML元素的默认CSS设置介绍
  • 去除所有js,html,css代码
  • 发布 sqEditor HTML 编辑器 v1.0 By shawl.qiu(兼容 IE, Opera, Firefox)
  • 如何将django的文档转成html
  • XHTML1.0学习总结
  • 收藏: 几个不太常用但很有用的HTML Tag
  • innerHTML、outerHTML、innerText、outerText的区别
  • JS中的innerHTML的一个小问题
  • DICK原创:Rendering an IHTMLElement to a Image File Using GDI+
  • 使用 h:outputText 执行输出 HTML 标签
  • 【随机文章】
  • 学习笔记:Linux的系统停止与重启动命令详解
  • eyBuild中文手册(CGI)
  • 90°板状天线 TDJ-2400I1
  • apache2 php5 mysql5安装配置
  • 批量杀掉进程
  • 想做一个SSL VPN
  • fc5 上不了网 驱动没有装好
  • 终于装上了DNN3.0.12,开始DNN之旅
  • SELECT 语句与其子句的详解
  • 破解Screen logger manager v1.01(3)
  • 【相关评论】
    没有相关评论
    【发表评论】
    姓名:
    邮件:
    随机码*
    评论*
          
    |  首 页  |  版权声明  |  联系我们   |  网站地图  |
    CopyRight © 2004-2007 软讯网络 All Rigths Reserved.