如何截取本页的流,访问a.aspx的同时在服务器上生成一个a.htm?
尽量不考虑另外stream = (HttpWebRequest)WebRequest.Create(url).GetResponse().GetResponseStream();这样的办法,这样相当于访问了两次。
我是想用一个比较省事的办法生成静态文件,只修改BasePage类就可以达到全站所有静态缓存的目的,在a.aspx的preInit事件里判断有无a.htm,如果有就跳过去,如果没有,就Response a.aspx的同时生成一个a.htm,下次其他人就可以跳到a.htm了。
和CSDN帖子的静态思路是基本一样的。只是想更省事些,不想两次request。
注:不考虑特殊用户逻辑的情况。
------解决方案--------------------------------------------------------
孟子写了一个,你去看看
------解决方案--------------------------------------------------------
狼兄的帖子一定要顶!
------解决方案--------------------------------------------------------
protected override void OnPreRenderComplete(EventArgs e) { base.OnPreRenderComplete(e); System.IO.StringWriter sw = new StringWriter(); HtmlTextWriter htw = new HtmlTextWriter(sw); foreach (Control c in this.Controls) { if (c is HtmlForm) { foreach (Control c1 in c.Controls) { c1.RenderControl(htw); } } else c.RenderControl(htw); } Response.Write(sw.ToString()); }
------解决方案--------------------------------------------------------
------解决方案--------------------------------------------------------
关注下,顺祝各位51快乐~
------解决方案--------------------------------------------------------
http://www.cnblogs.com/kanshangren/articles/3959
------解决方案--------------------------------------------------------
幕白兄 的方法
感觉可行
但是 测试发现
在页面有 linkbutton时候 会出现 异常.
提示 控件 不在 有 runat=server 的form中.
目前还没找到办法.
关注 期待其他方法
------解决方案--------------------------------------------------------
关注~