栏目导航
热点推荐
- 如何配置Web.config文件 for ASP
- .NET小常识——答你所问
- ASP.NET程序中常用的三十三种代
- 一个“简单”的ASP.NET的服务器
- ASP.NET中使用AJAX中的方式
- 从N层到.NET详细剖析原理(2)
- 十项必须学习的.NET技术
- Visual Basic中文本框处理技巧集
- 几十个ASP.NET性能优化的常用方
- ASP.NET技术FAQ
- Asp.Net细节性问题精萃
- 十天学会ASP.net之第一天
阅览排行
三种ASP.NET生成静态页面方法比较
www.jz123.cn 2010-11-17 来源: 中国建站 责任编辑(袁袁) 我要投递新闻
第一种方法:向服务器的动态页面发送请求,获取页面的html代码。这种方法缺点显而易见:速度慢。另外如果请求的动态页面有验证控件的话,返回的html页面却无法进行数据验证。但这种方法写起来比较简单。主要代码如下:
01.#region//生成被请求URL静态页面
02.public static void getUrltoHtml(string Url,string Path)//Url为动态页面地址,Path为生成的静态页面
03.{
04. try
05. {
06. System.Net.WebRequest wReq = System.Net.WebRequest.Create(Url);
07. // Get the response instance.
08. System.Net.WebResponse wResp =wReq.GetResponse();
09. // Get the response stream.
10. System.IO.Stream respStream = wResp.GetResponseStream();
11. // Dim reader As StreamReader = New StreamReader(respStream)
12. System.IO.StreamReader reader = new System.IO.StreamReader(respStream,System.Text.Encoding.GetEncoding("gb2312"));
13. string str=reader.ReadToEnd();
14. System.IO.StreamWriter sw=new System.IO.StreamWriter(Path,false,System.Text.Encoding.GetEncoding("gb2312"));
15. sw.Write(str);
16. sw.Flush();
17. sw.Close();
18. System.Web.HttpContext.Current.Response.Write("<mce:script type="text/javascript"><!--
19.alert('页面生成成功!');
20.// --></mce:script>");
21. }
22. catch(System.Exception ex)
23. {
24. System.Web.HttpContext.Current.Response.Write("<mce:script type="text/javascript"><!--
25.alert('页面生成失败!"+ex.Message+"');
26.// --></mce:script>");
27. }
28.}
29.#endregion
#region//生成被请求URL静态页面
public static void getUrltoHtml(string Url,string Path)//Url为动态页面地址,Path为生成的静态页面
{
try
{
System.Net.WebRequest wReq = System.Net.WebRequest.Create(Url);
// Get the response instance.
System.Net.WebResponse wResp =wReq.GetResponse();
// Get the response stream.
System.IO.Stream respStream = wResp.GetResponseStream();
// Dim reader As StreamReader = New StreamReader(respStream)
System.IO.StreamReader reader = new System.IO.StreamReader(respStream,System.Text.Encoding.GetEncoding("gb2312"));
string str=reader.ReadToEnd();
System.IO.StreamWriter sw=new System.IO.StreamWriter(Path,false,System.Text.Encoding.GetEncoding("gb2312"));
sw.Write(str);
sw.Flush();
sw.Close();
System.Web.HttpContext.Current.Response.Write("<mce:script type="text/javascript"><!--
alert('页面生成成功!');
// --></mce:script>");
}
catch(System.Exception ex)
{
System.Web.HttpContext.Current.Response.Write("<mce:script type="text/javascript"><!--
alert('页面生成失败!"+ex.Message+"');
// --></mce:script>");
}
}
#endregion
上一篇:F#教程: 数值常量 下一篇:ASP.NET邮件按时间发送