在下一页中加载母版页的html内容

时间:2014-03-26 10:42:08

标签: c# html asp.net master-pages

我有一个要求,我想提高页面的性能,因为我的母版页大量加载了从数据库中获取的控件。

我想保存母版页的HTML输出,以便我可以使用HTML加载到使用母版页的其他页面,从而减少加载页面所需的时间。

有可能。?如果可能的话,任何参考。

我在网上搜索了同样的内容,但可能会得到一些不相关的内容。

2 个答案:

答案 0 :(得分:0)

使用Asp.Net Output Caching您可以缓存整个页面或页面片段(用户控件)。

  

ASP.NET允许您缓存由此生成的部分或全部响应   ASP.NET页面,在ASP.NET中称为输出缓存。您可以   在Web服务器上,在发出请求的浏览器中缓存页面   响应请求,以及任何其他支持缓存的设备,   例如代理服务器,位于请求或响应流中。   缓存为您提供了一种增强性能的强大方法   您的Web应用程序。缓存允许后续页面请求   从缓存中得到满足,以便最初创建的代码   页面不必再次运行。最常缓存您的网站   经常访问的页面可以大大增加您的Web服务器   吞吐量,通常以每秒请求数来衡量。

Thisi是一个小例子,只是为了解释它是如何工作的:

为了缓存页面的输出,请使用页面顶部的@OutputCache指令:

<%@ OutputCache Duration=5 VaryByParam="None" %>
  • 持续时间 - 缓存输出的时间(以秒为单位)。在指定的持续时间过去之后,将删除缓存的输出并为下一个请求生成页面内容。该输出将再次缓存5秒,并重复该过程。
  • VaryByParam - 此属性是必需的,并指定查询字符串参数以更改缓存。要指定多个参数,请对通过查询字符串
  • 传递的所有参数使用分号或*

答案 1 :(得分:0)

您可以使用缓存功能

来提高ASP.net应用程序的性能

您可以通过在母版页cs文件中添加以下行来增加母版页的缓存

protected void Page_Load(object sender, EventArgs e)
    {
        Response.Cache.SetExpires(DateTime.Now.AddMonths(1));
        Response.Cache.SetCacheability(HttpCacheability.ServerAndPrivate);
        Response.Cache.SetValidUntilExpires(true);
    }

保存html不是一个好主意