ASPX文件转HTML

转载 2007年09月25日 14:36:00
我们开发的asp.net系统中,有些动态的页面常被频繁访问,如我们的首页index.aspx它涉及到大量的数据库查询工作,当不断有用户访问它时,服务器便不断向数据库的查询,实际上做了许多重复的工作

服务器端的myPage.aspx
客户端显示myPage.htm
 
客户端访问
 

针对这种资源的浪费情况,我们现在来设计一个解决方案。我们先将那些一段时间内内容不会有什么改变,但又遭大量访问的动态页面生成静态的页面存放在服务器上,当客户端发出访问请求时,就让他们直接访问我们生成的静态页面,过程如下图。

客户端显示myPage.htm
 
客户端访问
 
Execute

 
服务器端的myPage.aspx
 
服务器端的myPage.htm
 

现在我们需要一个后台程序来完成这些事情。
我们可将此做成一个类class  AspxToHtml ,其代码如下:

using System;
using System.IO;
using System.Web.UI;


namespace LeoLu
{
/// <summary>
/// AspxToHtml 的摘要说明。
/// </summary>
public class AspxToHtml
{
/// <summary>
/// Aspx文件url
/// </summary>
public string strUrl;
/// <summary>
/// 生成html文件的保存路径
/// </summary>
public string strSavePath;
/// <summary>
/// 生成html文件的文件名
/// </summary>
public string strSaveFile;


public AspxToHtml()
{
//
// TODO: 在此处添加构造函数逻辑
//
}


/// <summary>
/// 将strUrl放到strSavePath目录下,保存为strSaveFile
/// </summary>
/// <returns>是否成功</returns>
public bool ExecAspxToHtml()
{
try
{
StringWriter strHTML = new StringWriter();
System.Web.UI.Page myPage = new Page(); //System.Web.UI.Page中有个Server对象,我们要利用一下它
myPage.Server.Execute(strUrl,strHTML); //将asp_net.aspx将在客户段显示的html内容读到了strHTML中
StreamWriter sw = new StreamWriter(strSavePath+strSaveFile,true,System.Text.Encoding.GetEncoding("GB2312"));
//新建一个文件Test.htm,文件格式为GB2312
sw.Write(strHTML.ToString()); //将strHTML中的字符写到Test.htm中
strHTML.Close(); //关闭StringWriter
sw.Close(); //关闭StreamWriter
return true;
}
catch
{
return false;
}
}



/// <summary>
/// 将Url放到Path目录下,保存为FileName
/// </summary>
/// <param name="Url">aspx页面url</param>
/// <param name="Path">生成html文件的保存路径</param>
/// <param name="FileName">生成html文件的文件名</param>
/// <returns></returns>
public bool ExecAspxToHtml(string Url,string Path,string FileName)
{
try
{
StringWriter strHTML = new StringWriter();
System.Web.UI.Page myPage = new Page(); //System.Web.UI.Page中有个Server对象,我们要利用一下它
myPage.Server.Execute(Url,strHTML); //将asp_net.aspx将在客户段显示的html内容读到了strHTML中
StreamWriter sw = new StreamWriter(Path+FileName,true,System.Text.Encoding.GetEncoding("GB2312"));
//新建一个文件Test.htm,文件格式为GB2312
sw.Write(strHTML.ToString()); //将strHTML中的字符写到Test.htm中
strHTML.Close(); //关闭StringWriter
sw.Close(); //关闭StreamWriter
return true;
}
catch
{
return false;
}
}
}
}
  

ASP.NET中将.aspx页面转化成静态Html页面的方法

在开发中我们有时候需要将ASP.NET中的.aspx页面转化成静态的页面进行相关的业务处理,网上搜索了不少方法,有一些方法的确是蛮不错的,也帮助了我,在此谢谢那些网友啦。我现在将其中的一个方法整理出来...
  • gxwzmm
  • gxwzmm
  • 2013年02月05日 17:52
  • 8743

Aspx页面转换成html 页面

有的网站出于各种各样的原因,在IIS中修改了动态页面的默认后缀,asp时代就有人在服务器上修改配置,把html后缀的文件当作asp文件来解析:也就是说,asp程序(后缀为.asp)可以保存为一个.ht...
  • lem12
  • lem12
  • 2007年05月25日 17:19
  • 6995

[转帖]aspx文件转html

我们开发的asp.net系统中,有些动态的页面常被频繁访问,如我们的首页index.aspx它涉及到大量的数据库查询工作,当不断有用户访问它时,服务器便不断向数据库的查询,实际上做了许多重复的工作 ...
  • lizh0103
  • lizh0103
  • 2006年01月17日 22:06
  • 774

aspx文件转html

我们开发的asp.net系统中,有些动态的页面常被频繁访问,如我们的首页index.aspx它涉及到大量的数据库查询工作,当不断有用户访问它时,服务器便不断向数据库的查询,实际上做了许多重复的工作服务...
  • lulei
  • lulei
  • 2005年07月27日 14:20
  • 2264

ASPX文件转HTML

我们开发的asp.net系统中,有些动态的页面常被频繁访问,如我们的首页index.aspx它涉及到大量的数据库查询工作,当不断有用户访问它时,服务器便不断向数据库的查询,实际上做了许多重复的工作  ...
  • my98800
  • my98800
  • 2016年05月02日 09:41
  • 139

将ASPX文件生成HTML文件

方案1:/// /// 传入URL返回网页的html代码/// /// URL/// public static  string getUrltoHtml(string Url){errorMsg =...
  • chinawn
  • chinawn
  • 2005年12月04日 10:55
  • 1833

.aspx(或.asp)文件与.html(.htm)文件的区别与联系

由于都是用于描述网页文档的文件,自学asp.net起就对两者之间的关系很好奇 主要的区别在于,当用户请求页面时,它们在服务器的端的处理不同 下图解释客户端请求页面时,服务器端的处理流程:   .ht...
  • wang379275614
  • wang379275614
  • 2013年08月05日 20:12
  • 15334

HTML格式的页面,改成ASPX格式一运行起来,页面样式就乱了。

上午同事说美工给他的页面,样式有问题。原来HTML格式的Demo什么问题都没有,但是把格式改成.aspx的,再一运行,发现有些样式失效了。我看了下,aspx页面看不出问题,就是html改个后缀名,而且...
  • lxlnet
  • lxlnet
  • 2010年09月06日 13:56
  • 2666

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

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

aspx视图转换成Razor视图

aspx视图转换成Razor视图的方法之一
  • bpanyiwei
  • bpanyiwei
  • 2015年07月30日 22:16
  • 564
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:ASPX文件转HTML
举报原因:
原因补充:

(最多只允许输入30个字)