长春建设平台网站的公司吗,盐城市城乡建设局门户网站,百度免费下载,江诗丹顿手表网站---------------------- Windows Phone 7手机开发、.Net培训、期待与您交流#xff01; ---------------------- 这几日#xff0c;同学问我怎样将动态页面直接生车静态的html页面#xff0c;我想了想以前做过这个#xff0c;今天把方法做个总结。 我所知道的生成静态页面的… ---------------------- Windows Phone 7手机开发、.Net培训、期待与您交流 ---------------------- 这几日同学问我怎样将动态页面直接生车静态的html页面我想了想以前做过这个今天把方法做个总结。 我所知道的生成静态页面的方法有两种当然其他方法还有很多我比较了解的是模板生成和地址映射。 第一种模板生成模板生成其实就死定义一个静态的html模板然后将里面的关键字替换掉。例如 !DOCTYPE HTML PUBLIC -//W3C//DTD HTML 4.0 Transitional//EN HTMLHEAD title$ShowArticle/title bodybiaotibr$contentbrauthor/body/HTML$biaotibr$contentbr$author/body/HTML 然后用字符替换将关键字替换成动态的内容输出html文件这种方法灵活度太差如果一个站点的网页形式千变万化增删改查特别频繁那么这种方法就显得无能为力了。 第二种方法地址映射这种方法就把以上的缺点全都克服掉了。直接输入地址 生成静态。生成的静态 页面和动态页面一模一样。 代码 public static string ExecAspxToHtml(string Url, string Path, string FileName)//参数动态页面的地址生成静态html的地址html文件的名字{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, false, System.Text.Encoding.GetEncoding(GB2312));//新建一个文件Test.htm文件格式为GB2312 sw.Write(strHTML.ToString()); //将strHTML中的字符写到Test.htm中strHTML.Close(); //关闭StringWriter sw.Close(); //关闭StreamWriter return 生成成功;}catch (Exception ex){return ex.ToString(); }} 调用此方法 if (File.Exists(Server.MapPath(../) chanpin.aspx)){ tohtml.ExecAspxToHtml(../chanpin.aspx, Server.MapPath(../), chanpin.html); } 就是这样就会自动生成静态页面html方便吧但是这种方法再用的时候一定要注意生成静态html后的链接因为当你生成html后它原来的链接都是.aspx页面而现在都变成了html页面所以还要在生成静态的时候过滤一下链接 private string ReplaceStr(Match m){return m.Value .html;} StreamReader sr new StreamReader(Server.MapPath(../chanpin.html), code); string html sr.ReadToEnd(); html html.Replace(cp_read.aspx?cpid, cpread/cp_read); Regex reg new Regex((?is)(?a\s?href[^].*?)cpread/cp_read[\d]);html reg.Replace(html, ReplaceStr);sr.Dispose();sr.Close();StreamWriter sw new StreamWriter(Server.MapPath(../chanpin.html), false, code); sw.Write(html);sw.Flush();sw.Close(); 好就是这样差不多就完成了可能还会遇到其他问题想办法自己解决吧。 ---------------------- Windows Phone 7手机开发、.Net培训、期待与您交流 ---------------------- 转载于:https://www.cnblogs.com/weiwin/archive/2012/06/30/2570856.html