日期:2010-04-17  浏览次数:20459 次

如何生成静态页: 
  
  方案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"); 
        //   读取模板文件