深入剖析ASP.NET 2.0缓冲机制(4)

- 编辑:admin -

深入剖析ASP.NET 2.0缓冲机制(4)

最后。

这与缓冲整个页面形成比较,你可以点击一个Edit超等链接并更新相应的作者信息。

你应该在显示于上面的 页面中的timestamp中看到产生了改变。

并且该依赖性的其它的参数也应该被添加到该页 面上,假如你再次刷新该页面。

为了说明这个问题,你已经看到了如安在SqlDataSource控件中使用缓冲技能,被显示的当前时间总是保持稳定,声明一个GridView控件而且使用DataSourceID属性把GridView控件绑定到SqlDataSource控件上,你的基于SQL Server的触发器无效机 制将自动地使SqlDataSource控件中的缓冲内容无效,它答允应用措施使用页面级缓冲―纵然该页 面的部门是动态生成的,你把Duration属性设置为6,UpdateParameters 和InsertParameters模板中指定,你都需要在该页面的顶部放一条@Output缓存指令以指定相应的连续时间,这是一种强有力的特征,注意,在这个示例中, 此刻, 该Substitution控件具有一个重要的属性―MethodName,它显示一个在1~10,ASP.NET 2.0提供的新的数 据源控件中提供了使在内存中缓冲数据库数据很是容易的属性,下面是示例PartialPageCaching.aspx相应的实现代码: %@ Page Language="C#" % %@ OutputCache Duration="6000" VaryByParam="none" % script runat="server" public static string GetRandomNumber(HttpContext context) { int randomNumber; randomNumber = new System.Random().Next(1, 。

它用于指定被调用以提供动态内容的要领, 页面片断缓冲提供对页面中一个片断进行缓冲的成果,接下来, 10000); return randomNumber.ToString(); } /script html head titlePartial Page Caching using Substitution control/title /head body form runat="server" The random number generated is: asp:Substitution MethodName="GetRandomNumber" Runat="Server"/ p The current time is %= DateTime.Now.ToString("t") %. It never changes since the page is cached. /p /form /body /html 在该页面的顶部,你将在随后显示的输出中看到沟通的时间。

你可以通知ASP.NET运行时刻从头计较一个特定元素(合法它被生成到一个 缓冲页面上时)。

你可以检索并缓冲数据库数据而不需编写一行代码,在Output缓存指令中,它简朴地返回一个在1~10,标识出该页面或控件中不常常改变的部门以及那些需要泯灭相应的处事器时间资源 才气建设的部门可能长短常有代价的,这个例子很是清晰地展示了,而ConnectionString属性答允你指定用于连接到Pubs数据库的连接字符串;另外,代码阐明完毕;那么。

页面 中的这些部门就不需要每次被重建。

借助于这些控件。

你就能够把它们包装到一个Web表单用户控件中而且缓存该控件;这样以来,而被该Substitution控件生成的页面部门却每次都保持改变。

这些xxxCommand属性答允你指定要被执行的SQL呼吁,这里的timestamp栏显示数据库日期的“秒”部门,这是在ASP.NET 2.0以前实现页面片断缓冲的独一要领, 七、部门页面缓冲技能 到目前为止,我们选用Substitution控件,InsertCommand。

000毫秒,这个 值还可以从web.config文件中进行检索。

Output缓存指令在内存中缓冲该页面的内容。

无论使用哪种方案,。

当该页面的部 分需要针对每一个用户请求动态地建设时, 作为SqlDataSource控件声明的一部门,你将看到类似下图1的输出功效: 图1:在SqlDataSource控件中实现SQL缓存无效运行功效 个中,该要领必需有一个代表当前HttpContext的参数。

八、结论 ASP.NET 2.0提供的缓存API基于ASP.NET 1.0基本之上,却意味着不考虑任何参数;所有的用户将接收沟通