新闻发布 生成静态页面后的问题,如果生成HTML 文件后,
那么如何包含 网页头 和网页尾。因为网页头header 和网页尾footer 经常要改变,如果把他们也生成了,以后一旦改变了,还得要把数以千计的静态页面重新生成,太麻烦了。 我想把头和尾 做为包含来处理。除了用shtml 服务器包含 还有什么办法呢? .html

解决方案 »

  1.   

    调用js
    或者就是你说的shtml
    再有就是iframe一类的了
      

  2.   

    我觉得你把页头和页尾说成是静态不变的,有点简单。其实,如果你想避免反复创建控件,只要把页面的局部制作成缓冲的就行了。你可以把页脚制作成一个ascx,在ascx顶部设置“<%@ OutputCache Shared="true" Duration="36000"”,这样每隔1个小时才重新创建一次。你还可以设置数据库依赖、文件依赖、Cache变量依赖等,让用户控件灵敏地更新。这是很完整的一套动态管理ui界面流程。“静态页面”有很多功能都不具备,根本无法同日而语。
      

  3.   

    如果没有大量使用控件缓存、数据缓存的asp.net2.0应用,可以说是技术水平很低的。就像是伊拉克军队遇到了美国军队,花钱花精力不少,可是经不起挑剔的人的检验。
      

  4.   

    例如,你创建这样一个ascx文件:<%@ Control Language="C#" ClassName="WebUserControl" %>
    <%@ OutputCache Shared="true" Duration="15" VaryByParam="none" %><script runat="server">    protected void Page_Load(object sender, EventArgs e)
        {
            this.Label1.Text = "现在是:" + DateTime.Now.ToString();
        }
    </script><br /><asp:Label ID="Label1" runat="server" Text="Label"></asp:Label>
    然后把这个文件从解决方案拖入其它页面的底部,你可以看到页脚是“静态”的,每隔15秒钟才真正创建一次。你可以把你的页脚放在这个ascx里边。
      

  5.   

    我也在考虑这个问题呢。我开始也准备用生成HTMl,遇到跟楼主一样的问题;所以我现在准备把缓存的时间放长一点;