2009-11-28 11:34:36)转载此功能适用于后台数据库功能不强的web站点,即大部分文本不是存放在数据库的记录中,而是放在html文件或者xml文件中,仅仅把索引放到数据库中,如文章标题、类别、查询关键字等。这样适合于后台没有诸如MS Sql Server这样的数据库支持的Web站点。适用于新闻发布系统,比如sina、163等都是采用动态生成html页面的。适用于需动态定制页面的程序。比如论坛、聊天室等。可以加载定制好的html页面,来加强美观。思路1. 利用如Dw这样的工具生成html格式的模板,在需要添加格式的地方加入特殊标记(如$htmlformat$),动态生成文件时利用代码读取此模板,然后获得前台输入的内容,添加到此模板的标记位置中,生成新文件名后写入磁盘,写入后再向数据库中写入相关数据。2. 使用后台代码硬编码Html文件,可以使用HtmlTextWriter类来写html文件。优点1. 可以建立非常复杂的页面,利用包含js文件的方法,在js文件内加入document.write()方法可以在所有页面内加入如页面头,广告等内容。2. 静态html文件利用MS Windows2000的Index Server可以建立全文搜索引擎,利用asp.net可以以DataTable的方式得到搜索结果。而Win2000的Index服务无法查找xml文件的内容。如果包括了数据库搜索与Index索引双重查找,那么此搜索功能将非常强大。3. 节省服务器的负荷,请求一个静态的html文件比一个aspx文件服务器资源节省许多。缺点思路二: 如果用硬编码的方式,工作量非常大,需要非常多的html代码。调试困难。而且使用硬编码生成的html样式无法修改,如果网站更换样式,那么必须得重新编码,给后期带来巨大的工作量。因此这里采用的是第一种思路示列代码1.定义(template.htm)html模板页面

$htmlformat[3]

2.asp.net代码://---------------------读html模板页面到stringbuilder对象里----string[] format=new string[4];//定义和htmlyem标记数目一致的数组StringBuilder htmltext=new StringBuilder();try{using (StreamReader sr = new StreamReader("存放模板页面的路径和页面名")){String line;while ((line = sr.ReadLine()) != null){htmltext.Append(line);}sr.Close();}}catch{Response.Write("");}//---------------------给标记数组赋值------------format[0]="background=\"bg.jpg\"";//背景图片format[1]= "#990099";//字体颜色format[2]="150px";//字体大小format[3]= " 生成的模板html页面 ";//文字说明//----------替换htm里的标记为你想加的内容for(int i=0;i<4;i++){htmltext.Replace("$htmlformat["+i+"]",format[i]);}//----------生成htm文件------------------――try{using(StreamWriter sw=new StreamWriter("存放路径和页面名",false,System.Text.Encoding.GetEncoding("GB2312"))){sw.WriteLine(htmltext);sw.Flush();sw.Close();}}catch{Response.Write ("The file could not be wirte:");}小结用此方法可以方便的生成html文件。程序使用了是循环替换,因此对需替换大量元素的模板速度非常快。

Asp.net如何生成html静态页面相关推荐

  1. 黑马程序员——生成html静态页面,方便seo,加快加载速度

    ---------------------- Windows Phone 7手机开发..Net培训.期待与您交流! ---------------------- 这几日,同学问我怎样将动态页面直接生车 ...

  2. freemarker自动生成html页面,HTML+CSS入门 Freemarker如何生成HTML静态页面

    本篇教程介绍了HTML+CSS入门 Freemarker如何生成HTML静态页面,希望阅读本篇文章以后大家有所收获,帮助大家HTML+CSS入门. < 做一个网址导航的项目,面向用户的就是一个首 ...

  3. PHP简易实现批量生成html静态页面

    PHP简易实现批量生成html静态页面 大家好,我骇Yangrl. 原来哈起一坨(蠢萌),写了页面以后,复制十份,挨着改里面的文本,imp,url等内容,做成十张页面(类似新闻详情页啊,商品详情页等) ...

  4. ASP.NET MVC 访问html静态页面

    ASP.NET MVC 访问html静态页面 大家应该遇到过当我直接访问一个前端页面时,报404这个错误 那么我们就来解决访问View文件夹下的html页面的问题: 想说明问题出现的原因,很简单,就是 ...

  5. asp批量生成html静态页面方法

    随着网站访问量的加大,每次从数据库读取都是以效率作为代价的,很多用ACCESS作数据库的更会深有体会,静态页加在搜索时,也会被优先考虑.互联网上流行的做法是将数据源代码写入数据库再从数据库读取生成静态 ...

  6. Freemarker生成HTML静态页面

    这段时间的工作是做一个网址导航的项目,面向用户的就是一个首页,于是就想到了使用freemarker这个模板引擎来对首页静态化. 之前是用jsp实现,为了避免用户每次打开页面都查询一次数据库,所以使用了 ...

  7. mysql制作html静态网页6_将数据库中的所有内容生成html静态页面的代码

    将数据库中的所有内容生成html静态页的代码,比较简单了,有需要的朋友可以参考下. 复制代码 代码如下: require_once("conn.php"); if($_GET['a ...

  8. asp .net 模板引擎 使用 Razor 生成html静态页面

    刚开始不是理解 写完之后 觉得还蛮简单的 分为这几个步骤 1.获取页面模板Html 2.获取数据 3.解析模板和数据,生成静态页Html代码 4.生成静态文件 模板形式是mvc的模式,会mvc 看一下 ...

  9. php html实例代码,PHP生成HTML静态页面实例代码

    为cd2sc.com网站功能而开发,代码为本人原创,生成速度一般. (出于众所周知的原因,涉及到数据库的数据字段名称做了改动,并且为了代码明晰去掉了参数过滤的部分) 说明:原动态地址为 moban.p ...

最新文章

  1. bert模型图解 很详细的与其他模型对比实验
  2. 基于opencv实现图像差异检测
  3. 是什么引起数据中心机房事故频发,是天灾还是人祸?
  4. 流式计算框架Storm后台启动命令(避免新开窗口)
  5. 《剑指offer》用两个栈实现队列
  6. 如何用js获取浏览器URL中查询字符串的参数
  7. 迪士尼手机官方专卖东家京破产
  8. MD5算法原理与常用实现
  9. ubuntu18.04安装opencv4.3.0
  10. Tensorflow Day1
  11. Atitit 常用技能点体系树 os win linux android 前后端 gui h5 vue js jquery bootstrap cocos2d Jafavx wpf
  12. 总结---JavaScript数组
  13. MySQL 学生信息管理系统 表格信息
  14. 互联网日报 | 4月29日 星期四 | 虎牙20亿购买LPL直播版权;返利网正式借壳登陆A股;淘宝直播全面开放官方货品池
  15. 岩土工程颗粒流软件PFC6.0技巧——按计算时间导出数据、图像及保存文件
  16. c语言英文背单词软件下载,英语百词斩下载,背单词最好的软件排名?
  17. 关于盒子背景图片布局
  18. Android将2张图片合成一张图片(Bitmap类型)附二维码生成
  19. 【2022吉比特】春招技术笔试A卷-AK题解
  20. Android应用市场转移【2021-03-22】

热门文章

  1. WINCE7中RTC时钟芯片BQ32K的开发
  2. 【029】获取选择要素的属性
  3. C#通用类库--DOS常用命令
  4. MiniO 磁盘缓存快速入门
  5. Oracle SQL性能优化的40条军规
  6. 软件测试工程师笔试总结
  7. Coding:文件网盘高速直链下载无限空间
  8. 【Java】计算1!+2!+.....+20!的值
  9. C#开发笔记之13-如何用C#分隔字符串并返回字符串数组?
  10. C#LeetCode刷题之#39-组合总和(Combination Sum)