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

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

 2010-11-04 08:54:03 来源:WEB开发网 闂傚倸鍊搁崐椋庢濮橆兗缂氱憸宥堢亱闂佸湱铏庨崰鏍不椤栫偞鐓ラ柣鏇炲€圭€氾拷闂傚倸鍊搁崐椋庣矆娓氣偓楠炲鏁撻悩鎻掔€梺姹囧灩閻忔艾鐣烽弻銉︾厵闁规鍠栭。濂告煕鎼达紕校闁靛洤瀚伴獮鎺楀箣濠靛啫浜鹃柣銏⑶圭壕濠氭煙閻愵剚鐏辨俊鎻掔墛缁绘盯宕卞Δ鍐冣剝绻涘畝濠佺敖缂佽鲸鎹囧畷鎺戭潩閹典焦鐎搁梻浣烘嚀閸ゆ牠骞忛敓锟�婵犵數濮烽弫鍛婃叏椤撱垹绠柛鎰靛枛瀹告繃銇勯幘瀵哥畼闁硅娲熷缁樼瑹閳ь剙岣胯鐓ら柕鍫濇偪濞差亜惟闁宠桨鑳堕崝锕€顪冮妶鍡楃瑐闁煎啿鐖奸崺濠囧即閵忥紕鍘梺鎼炲劗閺呮稒绂掕缁辨帗娼忛埡浣锋闂佽桨鐒﹂幑鍥极閹剧粯鏅搁柨鐕傛嫹闂傚倸鍊搁崐椋庢濮橆兗缂氱憸宥堢亱闂佸湱铏庨崰鏍不椤栫偞鐓ラ柣鏇炲€圭€氾拷  闂傚倸鍊搁崐鐑芥嚄閼哥數浠氱紓鍌欒兌缁垶銆冮崨鏉戠厺鐎广儱顦崡鎶芥煏韫囨洖校闁诲寒鍓熷铏圭磼濡搫顫岄梺鍦拡閸嬪棝鎯€椤忓浂妯勯梺鍝勬湰濞叉ḿ鎹㈠┑濠勭杸闁哄洨濮烽悰銉╂⒒娴e搫甯跺鐟帮攻缁傚秴饪伴崼姘e亾閺冨牆绀冩い蹇庣娴滈箖鏌ㄥ┑鍡涱€楀褜鍠栭湁闁绘ɑ鐟ョ€氼喚绮绘ィ鍐╃厱妞ゆ劑鍊曢弸搴ㄦ煟韫囧鍔滈柕鍥у瀵潙螣閸濆嫬袝婵$偑鍊戦崹娲偡閳哄懎绠栭柍鈺佸暞閸庣喖鏌曢崶褍绨婚柟鍑ゆ嫹
核心提示: 方案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)
赞助商链接