开发学院WEB开发ASP.NET .NET中生成静态页的几种方案 阅读

.NET中生成静态页的几种方案

 2010-11-04 08:54:03 来源:WEB开发网   
核心提示: 方案1: /// <summary> /// 传入URL返回网页的html代码 /// </summary> /// <param name="Url">URL</param> /// <returns>&l

 方案1: 
  ///  <summary> 
  ///  传入URL返回网页的html代码 
  ///  </summary> 
  ///  <param  name="Url">URL</param> 
  ///  <returns></returns> 
  public  static   string  getUrltoHtml(string  Url) 
  { 
  errorMsg  =  ""; 
  try 
  { 
  System.Net.WebRequest  wReq  =  System.Net.WebRequest.Create(Url); 
  //  Get  the  response  instance. 
  System.Net.WebResponse  wResp  =wReq.GetResponse(); 
  //  Read  an  HTTP-specific  property 
  //if  (wResp.GetType()  ==HttpWebResponse) 
  //{ 
  //DateTime  updated   =((System.Net.HttpWebResponse)wResp).LastModified; 
  //} 
  //  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")); 
  return   reader.ReadToEnd(); 
 
  } 
  catch(System.Exception  ex) 
  { 
  errorMsg  =  ex.Message  ; 
  } 
  return  ""; 
  } 
 
  你可以用这个函数获取网页的客户端的html代码,然后保存到.html文件里就可以了。 
 
  方案2 
  生成单个的静态页面不是难点,难的是各个静态页面间的关联和链接如何保持完整; 
  特别是在页面频繁更新、修改、或删除的情况下; 
 
  像阿里巴巴的页面也全部是html的,估计用的是地址映射的功能 
  关于地址映射可参考:http://www.easewe.com/Article/ShowArticle.aspx?article=131 
 
  可以看看这个页面,分析一下他的“竞价倒计时”功能 
  http://info.china.alibaba.com/news/subject/v1-s5011580.html?head=top4&Bidding=home5 
 
  ASP.Net生成静态HTML页 
  在Asp中实现的生成静态页用到的FileSystemObject对象! 
  在.Net中涉及此类操作的是System.IO  
  以下是程序代码  注:此代码非原创!参考别人代码 
 
    CODE:    
  //生成HTML页 
    public  static  bool  WriteFile(string  strText,string  strContent,string  strAuthor)  
    { 
     string  path  =  HttpContext.Current.Server.MapPath("/news/"); 
     Encoding  code  =  Encoding.GetEncoding("gb2312"); 
     //  读取模板文件 
     string  temp  =  HttpContext.Current.Server.MapPath("/news/text.html"); 
     StreamReader  sr=null; 
     StreamWriter  sw=null; 
     string  str="";   
     try 
     { 
      sr  =  new  StreamReader(temp,  code); 
      str  =  sr.ReadToEnd();  //  读取文件 
     } 
     catch(Exception  exp) 
     { 
      HttpContext.Current.Response.Write(exp.Message); 
      HttpContext.Current.Response.End(); 
      sr.Close(); 
     } 
   
    
     string  htmlfilename=DateTime.Now.ToString("yyyyMMddHHmmss")+".html"; 
     //  替换内容 
     //  这时,模板文件已经读入到名称为str的变量中了 

1 2 3 4  下一页

Tags:NET 生成 静态

编辑录入:爽爽 [复制链接] [打 印]
[]
  • 好
  • 好的评价 如果觉得好,就请您
      0%(0)
  • 差
  • 差的评价 如果觉得差,就请您
      0%(0)
赞助商链接