越来越多的网站现在将过去的动态网页生成了静态的HTML页,这样做的好处有很多,比如减轻服务器的压力,利于搜索引擎的收录.......在ASP时代利用ADO+FSO将数据库中的内容生成静态的页面,在.Net中我们使用IO这个类库来进行服务器上文件的读取,本文主要介绍如何将数据库中的内容填充至模板页中,并生成静态的HTML页面。。J|^1U#j?D  
环境:Microsoft .NET Framework SDK v1.1 n:E/aZlS  
OS:Windows Server 2003 中文版vF7 6$wm  
ASP.Net生成静态HTML页DT:67 *<  
在Asp中实现的生成静态页用到的FileSystemObject对象![*;d3T  
在.Net中涉及此类操作的是System.IO =Qbee|w'x  
以下是程序代码:[r`fCad  
<k7H_t' W  
  CODE:   Lt#t2 2  
//生成HTML页YHcv\Pzik  
  public static bool WriteFile(string strText,string strContent,string strAuthor) \SNO+c  
  {f<h+h6o@  
  string path = HttpContext.Current.Server.MapPath("/news/");$ <RnsINm  
  Encoding code = Encoding.GetEncoding("gb2312");HU~/qyd:D  
  // 读取模板文件Y!Rbkfh+{  
  string temp = HttpContext.Current.Server.MapPath("/news/text.html");]'.C%|  
  StreamReader sr=null;+h:sFH9  
  StreamWriter sw=null;!$e1G.aG  
  string str=""; 3!@I%0  
  trylEF_S  
  {HC:e4}1=  
  sr = new StreamReader(temp, code);.-E;_Gtz  
  str = sr.ReadToEnd(); // 读取文件hFUo'I#t  
  }0A:1qr5  
  catch(Exception exp)\)T'`1*>v?  
  {!/ 8|N'  
  HttpContext.Current.Response.Write(exp.Message);FQvqY/W'  
  HttpContext.Current.Response.End();>0bel#l  
  sr.Close();_wZ2AH  
  }5k^YQFW  
|&m&:c0(,  
  Loa0?~@  
  string htmlfilename=DateTime.Now.ToString("yyyyMMddHHmmss")+".html";mS5i?cjA  
  // 替换内容/MG{ zZ1uG  
  // 这时,模板文件已经读入到名称为str的变量中了s@m3Wgd  
  str =str.Replace("ShowArticle",strText); //模板页中的ShowArticleoGia(~[_\  
  str = str.Replace("biaoti",strText);5siRY*Is<  
  str = str.Replace("content",strContent);N(:IP!?}(  
  str = str.Replace("author",strAuthor);I6uY\/+T6  
  // 写文件dMAg>r_X  
  tryU'YJ{__  
  {E</fV  
  sw = new StreamWriter(path + htmlfilename , false, code);U~v~w!4!~  
  sw.Write(str);" w>9+e  
  sw.Flush();@wLCK,]f  
  }h" O(N{W  
  catch(Exception ex)StNd_`c>  
  {xp1leY@  
  HttpContext.Current.Response.Write(ex.Message);"61l8tio3  
  HttpContext.Current.Response.End();Q5m<'XG  
  }l71p[0':  
  finally4ZW`hr{Ac  
  {_D:I8LY_  
  sw.Close();CL$Wy  
  }B(QY3L^>Z  
  return true; )E ji!EJ;T  
此函数放在Conn.CS基类中了hd = GJ  
在添加新闻的代码中引用 注:工程名为HoverqN}vU/xu  
TX+1/Y_+?  
  if(Hover.Conn.WriteFilethis.Title.Text.ToString),this.Content.Text.ToString),this.Author.Text.ToString))).owUp^  
  {jmV|+ dN  
    Response.Write("添加成功");Im\6JD{ c  
  }oPRY -jF?-  
  elseuJqIQ'Nh  
  {_?t#m< Rt  
    Response.Write("生成HTML出错!");OJ&i-U|M  
  } 2gKiy/~zN  
BC 1XU ]  
),w(E&$wo  
P> SfAA  
模板页Text.html代码j1Hzdx7  
@AzOuj  
2d \ SDe5  
  CODE:   c$e}>b9y  
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" >3,y-G0*)  
<HTML>9'yxs#/y  
<HEAD>oD"8SV$  
  <title>ShowArticle</title>2AB?5Bn';  
  <body>jjfaZI?f  
biaotikjB2qd9V  
<br>c8NM  
content<br>}n0M !"  
authorc36m UT  
</body>9fXU#/).  
</HTML>aO1[O oH.  
biaoti\eX1OuP  
<br>8x%b| "W[  
content<br>x>KEXaQNKQ  
author;3`m#.1 1  
</body>=a JQ^StJ  
</HTML> Sj~/c+f  
,[z1W9mb  
提示添加成功后会出以当前时间为文件名的html文件!上面只是把传递过来的几个参数直接写入了HTML文件中,在实际应用中需要先添加数据库,然后再写入HTML文件

转载于:https://www.cnblogs.com/netkey/articles/1123563.html

ASP.Net中生成静态HTML页相关推荐

  1. ASP.Net生成静态HTML页

    环境:Microsoft .NET Framework SDK v1.1 OS:Windows Server 2003 中文版 ASP.Net生成静态HTML页 在Asp中实现的生成静态页用到的Fil ...

  2. ASP.Net生成静态HTML页!

    ASP.Net生成静态HTML页! 环境:Microsoft .NET Framework SDK v1.1 OS:Windows Server 2003 中文版 ASP.Net生成静态HTML页 在 ...

  3. ASP.NET中生成缩略图的代码

    ASP.NET中生成缩略图的代码 先必须导入 using System.Drawing;   // <summary> /// 生成缩略图 /// </summary> /// ...

  4. ASP非模板生成静态页

    首先我们要创建一个数据库表news包括字段 id   title     contect     date  接着我们设置一个ASP数据显示页shownew.asp 代码如下: <%@codep ...

  5. asp.net中关于静态页面生成的代码实例

    目前网页html静态化是利用其它的动态技术生成html静态页面,还不是静态网站.因为的确是这样的,生成html静态网页有一定的好处.      一.加快页面打开浏览速度,静态页面无需连接数据库教程打开 ...

  6. 动态asp网页批量生成静态html网页问题

    <% '读取模板 set rs=server.createobject("adodb.recordset") rs.open ("select tradeinfo_ ...

  7. ASP动态网页生成静态Html网页代码

    [摘 要] 生成html网页有利于被搜索引擎收录,不仅被收录的快还收录的全.前台脱离了数据访问,减轻对数据库访问的压力,加快网页打开速度. 网页生成静态Html文件有许多好处,比如生成html网页有利 ...

  8. ASP.NET C# 生成静态页面简单方法

    //源码是替换掉模板中的特征字符 string mbPath = Server.MapPath("template.html");             Encoding cod ...

  9. 如何在ASP.NET中生成HTML5离线Web应用

    传统的Web应用程序有一个很大的症结是当用户的网络连接不好时,应用会加载失败,为了 解决这一问题,HTML5中引入了Web的离线工作的功能.离线功能使得Web应用程序类似于本机应用程序,当断开网络连接 ...

最新文章

  1. php redis search,php redis类
  2. MIT请来了一群经济学家,就AI是否会带来大规模失业展开了一场辩论
  3. Python中的http网络请求,用它就对了
  4. 采访Jesús Fernandes(QA主管)
  5. E: Unable to correct problems, you have held broken packages
  6. .ini文件中的PHP 5.6 error_reporting设置不起作用
  7. c语言入门教程文库,C语言入门教程(全集)课件
  8. if else if语句格式_Python_if 语句
  9. Netty工作笔记0030---NIO与零拷贝原理剖析
  10. 利用Visual Studio Project自动将数据加载到SQL Server数据库中
  11. easymock_EasyMock验证
  12. 创建设备文件节点_使用device_create实例分析
  13. oracle 产看执行计划_ORACLE数据库查看执行计划的方法
  14. 二十套Java项目源码
  15. AI基础:深度强化学习之路
  16. Arduino基础应用学习
  17. 拼装机器人感想_机器人实验心得体会
  18. ubuntu 12.04下安装adobe flash
  19. SingleTask和SingleInstance详解
  20. 水晶报表使用经验总结

热门文章

  1. Springboot毕设项目华阳大众汽车售卖系统v9f90(java+VUE+Mybatis+Maven+Mysql)
  2. 什么是.svn文件? SVN使用说明
  3. 量子计算机可以发明时光机,俄科学家发明全球第一台时光机,可让微小粒子向过去移动1秒钟...
  4. Linux系统自动化安装(二)
  5. Windows CE嵌入式系统程序开发
  6. windows程序设计读书笔记一
  7. 项目进度紧张,如何确保保质保量完成?
  8. 综述|领略目标检测的前世今生
  9. 低成本创业必知的五个“基本点”
  10. css + js实现简单无缝滚动字幕