确切的 英文:如何使用 Visual C#.NET 在 ASP.NET 中的缓存
来源:百度文库 编辑:偶看新闻 时间:2024/05/04 12:55:42
本文分步介绍了如何控制缓存的网页和 ASP.NET 中的数据对象。 当您缓存网页时,您避免进行更高版本的请求时重新创建的信息。缓存是重要的技术,用于构建高性能和可缩放的服务器应用程序。 第一个页请求时,您可以将数据对象、 页或内存页的一部分存储。您可以将这些项目存储在 Web 服务器上,代理服务器的服务器上或在浏览器上。
ASP.NET 提供更容易的方法控制缓存。 可以使用 @ OutputCache 指令来控制页输出缓存在 ASP.NET 中。 使用 HttpCachePolicy 类来存储如数据集到服务器内存之类的任意对象。 可以将缓存存储在应用程序(如客户端浏览器、 代理服务器和 Microsoft Internet Information Services (IIS)。 通过 Cache-Control HTTP 标题可以控制缓存。
有关 ASP.NET 输出缓存的详细信息,单击下面的文章编号,以查看 Microsoft 知识库中的文章:308375 (http://support.microsoft.com/kb/308375/ ) 如何控制页输出缓存在 ASP.NET 中使用 Visual C#.NET
您可以使用缓存, @ OutputCache 指令,或可以缓存以编程方式通过代码使用 Visual Basic.NET 或 Visual C#.NET。 @ OutputCache 指令包含一个 位置 属性。此属性确定缓存的项的位置。 您可以指定以下位置:
以下是为 @ OutputCache 指令和等效的编程代码的代码示例。
ASP.NET 提供更容易的方法控制缓存。 可以使用 @ OutputCache 指令来控制页输出缓存在 ASP.NET 中。 使用 HttpCachePolicy 类来存储如数据集到服务器内存之类的任意对象。 可以将缓存存储在应用程序(如客户端浏览器、 代理服务器和 Microsoft Internet Information Services (IIS)。 通过 Cache-Control HTTP 标题可以控制缓存。
有关 ASP.NET 输出缓存的详细信息,单击下面的文章编号,以查看 Microsoft 知识库中的文章:308375
缓存 ASP.NET 页
您可以使用缓存, @ OutputCache 指令,或可以缓存以编程方式通过代码使用 Visual Basic.NET 或 Visual C#.NET。 @ OutputCache 指令包含一个 位置 属性。此属性确定缓存的项的位置。 您可以指定以下位置:
- 任何 为此存储客户端浏览器,代理服务器 (或任何其他服务器)上参与请求中, 或处理请求的服务器上的中的输出缓存。 默认情况下, 任何 处于选中状态。
- 客户端 此存储客户端浏览器中的输出缓存。
- Downstream -此存储中 (而不是原始服务器)参与请求任何具有缓存功能设备的输出缓存。
- 服务器 -这在将输出缓存存储在 Web 服务器上。
- 无 -此关闭输出缓存。
以下是为 @ OutputCache 指令和等效的编程代码的代码示例。
- 存储输出缓存持续时间
声明性的方法:<%@ OutputCache Duration="60" VaryByParam="None" %>
编程的方法:Response.Cache.SetExpires(DateTime.Now.AddSeconds(60)); Response.Cache.SetCacheability(HttpCacheability.Public);
- 存储在浏览器客户端请求的来源的输出缓存
声明性的方法:<%@ OutputCache Duration="60" Location="Client" VaryByParam="None" %>
编程的方法:Response.Cache.SetExpires(DateTime.Now.AddSeconds(60)); Response.Cache.SetCacheability(HttpCacheability.Private);
- 存储输出缓存,包括代理服务器和客户端的请求任何 HTTP 1.1 缓存的设备上
声明性的方法:<%@ OutputCache Duration="60" Location="Downstream" VaryByParam="None" %>
编程的方法:Response.Cache.SetExpires(DateTime.Now.AddSeconds(60)); Response.Cache.SetCacheability(HttpCacheability.Public); Response.Cache.SetNoServerCaching();
- 存储在 Web 服务器上的输出缓存
声明性的方法:<%@ OutputCache Duration="60" Location="Server" VaryByParam="None" %>
编程的方法:TimeSpan freshness = new TimeSpan(0,0,0,60); DateTime now = DateTime.Now; Response.Cache.SetExpires(now.Add(freshness)); Response.Cache.SetMaxAge(freshness); Response.Cache.SetCacheability(HttpCacheability.Server); Response.Cache.SetValidUntilExpires(true);
- 缓存为每个 HTTP 请求到达时使用不同的城市的输出:
声明性的方法:<%@ OutputCache duration="60" varybyparam="City" %>
编程方法:Response.Cache.SetExpires(DateTime.Now.AddSeconds(60)); Response.Cache.SetCacheability(HttpCacheability.Public); Response.Cache.VaryByParams["City"] = true;
VaryByCustom 属性,该 VaryByHeader 属性或 @ OutputCache 指令中的 VaryByParam 属性,该 HttpCachePolicy 类提供 VaryByHeaders 属性和 VaryByParams 属性和 SetVaryByCustom 方法。
关闭客户端和代理缓存
位置 属性值设置为 无 ,并将 VaryByParam 值设置为 无 @ OutputCache 指令中。 使用下面的代码示例关闭客户端和代理缓存。- 声明性的方法:
<%@ OutputCache Location="None" VaryByParam="None" %>
- 编程的方法:
Response.Cache.SetCacheability(HttpCacheability.NoCache);
缓存服务器内存中的任意对象
Cache 类实现此方法。 实例是专用于每个应用程序,并且生存期与相应的应用程序。 要通过使用 缓存 类缓存 ASP.Net 中任意的对象,请按下列步骤操作:- 通过 Visual C#.NET 中创建新的 ASP.NET Web 应用程序。
- 情况默认,创建 WebForm 1.aspx 。
- 在 WebForm 1.aspx 的 HTML 视图,在现有代码替换下面的示例代码:
<%@ Import Namespace="System.Data" %> <%@ Import Namespace="System.Data.SqlClient" %>
请注意 替换值的 ServerName、 UID 和 PWD SqlConnection 对象的示例代码中您 SQL Server 名称、 用户 ID 和密码。 - 在 调试 菜单中上, 单击 开始 运行该应用程序。
请注意 在重新启动应用程序时, 缓存是重新创建。
在哪下载Visual C#.NET??
visual C++.net在哪下载
visual c ++.net
visual c++.net问题
visuaL c++.net
在没有IIS的XP系统上如何安装并能使用visual studio.net 2005
visual c#.net 如何与sql server 2000连接
没有一点编程基础学习Visual C++.NET 如何开始
如何使用Microslft Visual Studio.Net编辑C++语言?
怎么在win xp里装Visual C#.NET啊
新手入门,visual c++.net 求救
哪能下载visual c++.net
C语言,C++,Visual C,Visual C++,Visual C.#,Visual C.net是怎样的关系?
.net(C#)中String.Format如何使用
c++.net 中如何使用opengl
c#,c#.net,visual c#.net什么区别???
如何在Visual studio.net2005中创建.net 应用
请问如何使用visual studio编c语言程序
c#.net与visual c#.net有什么区别?
Visual C++.net是什么语言的编缉器呀
关于visual c#.NET 的安装配置
用多媒体学《Visual C#.NET》
关于 Visual Studio .NET 2003 [c++]设置?
.net(c#)中如何使用在CS中创建的算法?