公司做好的网站让我把后缀改为.html,并且里面之前用控件动态读取的数据连接都是a.aspx?id=5的链接改为20100912(名字是动态生成的).html,就是链接也是***.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         该架构的优点:

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

来源:英超直播

aspx页面转换为html相关推荐

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

    1.         模版法 该方法历史悠久,具体处理流程为采用一个html模版,将其中的关键字替换为我们希望的信息. 优点: 缺点: 所有的信息都要采取字符串批凑的方式来实现,比如需要一个列表,就需 ...

  2. ASP.NET中aspx页面runat=server的本质(Essensial of runat=”server” in ASP.NET)

    今天同事问我一个"神奇"的问题,另一个同事"神奇"地找出了问题但无法解释,归咎于一种"习惯"或者"下次注意".现在我把问 ...

  3. ASPX页面中不放置Form元素的问题

    在整理项目里面的代码时,结果被一个失误郁闷了一下. 事情是这样的,原来项目里面有几个页面是*.htm格式的,后来为了统一管理资源方便,就把文件改成了*.aspx的了.当然这样做是没有任何的问题,同时V ...

  4. Jquery Ajax调用aspx页面方法

    原文:Jquery Ajax调用aspx页面方法 在asp.net webform开发中,用jQuery ajax传值一般有几种玩法 1)普通玩法:通过一般处理程序ashx进行处理: 2)高级玩法:通 ...

  5. Aspx页面生命周期(转)

    阶段 说明 页请求 页请求发生在页生命周期开始之前.用户请求页时,ASP.NET 将确定是否需要分析和编译页(从而开始页的生命周期),或者是否可以在不运行页的情况下发送页的缓存版本以进行响应. 开始 ...

  6. Aspx页面中直接编写javascript脚本

    Aspx页面中直接编写javascript脚本 ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ Title      : AspNet Page Using ...

  7. aspx页面中使用%= %的注意事项

    在aspx页面中使用<%=%>时,因为值都是字符串,所以最好将其用单引号括起来.至于为什么不用双引号,是为了防止冲突.

  8. 用户控件如何控制ASPX页面的控件

    问题来自论坛http://topic.csdn.net/u/20120415/17/3f264265-b25c-4db8-a192-520e8a60e4c1.html?85396 问题分析,aspx页 ...

  9. 用aspx开发html5页面,ASP.NET使aspx页面能接受HTML,asp的页面传送的文件-.NET教程,Asp.Net开发...

    aspx接受aspx页面的文件很简单,用htmlinputfile,就可以了,但是如果接受html页面post的文件 就不怎么好办了,我仿照asp的方法做法如下,自己测试通过,拿出来给大家共享,可以限 ...

最新文章

  1. 一:搭建一套免费的serverless网站
  2. 阿里云消息队列 2021 新功能新特性重要里程碑
  3. 阔步向前冲,拥抱云计算-【软件和信息服务】2012.10
  4. python求pai的近似值_PR Sampling Ⅰ: 蒙特卡洛采样、重要性采样及python实现
  5. 前端学习(2245)vue值造轮子之需求设计
  6. 产品经理的肾,是怎么坏的?
  7. 计算机网络之数据链路层:1、概述
  8. Python中的文件对比(difflib文件对比、Linux文件对比)
  9. 20190810:存在重复(三种解法)
  10. 密钥怎么存储在数据库中
  11. pytorch中的乘法操作
  12. Visio2016激活工具
  13. VMware虚拟机和Linux的安装及镜像下载
  14. java阿里云图片检测同/异步sdk调用详解
  15. 虚拟服务器需要备案吗,虚拟主机需要备案吗
  16. IDC BGP 选型、出海线路
  17. Opencv中的颜色检测
  18. 二级路由器设置,二级路由器无法上网
  19. 网络安全:网络攻击原理与方法.
  20. java工作流 snaker_GitHub - sneakerhead/hutool: A java tools make it easy to code

热门文章

  1. 89. 基于Notes/Domino的文档工作流系统(一)
  2. cannot connect to database server
  3. 大数据十大关键词,涵盖政策、理念、安全、技术等要素,快来了解!
  4. 《Python知识手册》更新到V4.2版
  5. HDU6203 补题LCA复习+dfs序
  6. 【软件测试常见Bug清单】
  7. 无线点菜宝服务器,无线点菜机怎么用 无线点菜机使用方法【详解】
  8. C语言中图片处理函数,怎么用C语言中的fopen函数打开bmp格式的图像文件?
  9. 1-Redis 核心篇:唯快不破的秘密(码哥)
  10. IMU-TL740D的运行及相关资料