热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

[转]ASP.NET缓存(十八)从缓存中删除项时通知应用程序

ASP.NET提供CacheItemRemovedCallback委托。它定义编写事件处理程序时使用的签名,当从缓存中删除项时,该事件处理程序将进行响应

ASP.NET 提供 CacheItemRemovedCallback 委托。它定义编写事件处理程序时使用的签名,当从缓存中删除项时,该事件处理程序将进行响应。ASP.NET 还提供 CacheItemRemovedReason 枚举,您可以使用该枚举使事件处理程序依赖于删除该项的原因。

当从缓存中删除某项时通知应用程序

  1. 创建引发 CacheItemRemovedCallback 委托的事件的局部变量。例如,下面的代码创建类型为 CacheItemRemovedCallbackonRemove 局部变量。

    注意   该变量必须为此类型,以便用于第四步中 Cache.AddCache.Insert 方法的 onRemoveCallback 参数。
  2. 创建一个当从缓存中移除该项时进行响应的事件处理程序。例如,下面的代码将静态 Boolean itemRemoved 设置为 true,将静态 CacheItemRemovedReason reason 设置为当从缓存中移除该项时传递的值。
    注意   使用 CacheItemRemovedReason 枚举的成员为此步骤中的方法创建条件代码是您可以选择的一种方法。

    注意   该事件处理程序必须使用与 CacheItemRemovedCallback 委托相同的签名。此代码假设您已创建了两个静态变量:类型为 BooleanitemRemoved 和类型为 CacheItemRemovedReasonreason
  3. 创建调用事件处理程序的 CacheItemRemovedCallback 委托的实例。下面的代码调用第二步中创建的方法。

  4. 使用 Cache.Add 方法或 Cache.Insert 方法将项添加到 Cache 中。您必须在 onRemoveCallback 参数中指定第一步中创建的局部变量。下面的代码使用 Insert 方法将项添加的缓存中,该项的键为 "MyData1",值为 Source。它在 onRemoveCallback 参数中定义 onRemove 变量。

    当第四步中添加的项由于任何原因从 Cache 中移除时,将调用 RemovedCallback 方法,并且可以访问它其中的代码以将新内容呈现到请求客户端或以一种您选择的适当方式通知应用程序。

    有关完整的工作示例,请参见 CacheItemRemovedCallback 委托的文档。




推荐阅读
  • 探讨如何在映射文件中处理重复的属性字段,以避免数据操作时出现错误。 ... [详细]
  • 本文详细介绍了在 CentOS 系统中如何创建和管理 SWAP 分区,包括临时创建交换文件、永久性增加交换空间的方法,以及如何手动释放内存缓存。 ... [详细]
  • 本文详细介绍了在Windows系统中如何配置Nginx以实现高效的缓存加速功能,包括关键的配置文件设置和示例代码。 ... [详细]
  • 入门指南:使用FastRPC技术连接Qualcomm Hexagon DSP
    本文旨在为初学者提供关于如何使用FastRPC技术连接Qualcomm Hexagon DSP的基础知识。FastRPC技术允许开发者在本地客户端实现远程调用,从而简化Hexagon DSP的开发和调试过程。 ... [详细]
  • 本文探讨了如何通过Service Locator模式来简化和优化在B/S架构中的服务命名访问,特别是对于需要频繁访问的服务,如JNDI和XMLNS。该模式通过缓存机制减少了重复查找的成本,并提供了对多种服务的统一访问接口。 ... [详细]
  • 本文详细介绍了如何利用 Bootstrap Table 实现数据展示与操作,包括数据加载、表格配置及前后端交互等关键步骤。 ... [详细]
  • 本文详细介绍了笔记本电脑上多种实用的快捷键,包括屏幕调整、图形设置、分辨率更改、驱动更新、导航操作、音量控制及屏幕锁定等,旨在帮助用户更高效地使用笔记本电脑。 ... [详细]
  • 本文详细介绍了HTTP协议中的缓存机制,包括ETag的使用方法和304状态码的意义,探讨了强缓存与协商缓存的区别及其工作原理,旨在帮助开发者更好地理解和优化网站性能。 ... [详细]
  • Flutter 核心技术与混合开发模式深入解析
    本文深入探讨了 Flutter 的核心技术,特别是其混合开发模式,包括统一管理模式和三端分离模式,以及混合栈原理。通过对比不同模式的优缺点,帮助开发者选择最适合项目的混合开发策略。 ... [详细]
  • 本文详细记录了腾讯ABS云平台的一次前端开发岗位面试经历,包括面试过程中遇到的JavaScript相关问题、Vue.js等框架的深入探讨以及算法挑战等内容。 ... [详细]
  • RTThread线程间通信
    线程中通信在裸机编程中,经常会使用全局变量进行功能间的通信,如某些功能可能由于一些操作而改变全局变量的值,另一个功能对此全局变量进行读取& ... [详细]
  • 本文将详细介绍如何使用PHP获取文件夹的大小,包括子文件夹的大小,并提供实用的代码示例。 ... [详细]
  • top 命令是一个强大的工具,可以实时动态地监控系统的整体运行状况。它整合了多种信息,提供了一个全面的系统性能和运行信息视图。通过 top 命令的交互界面,用户可以使用热键进行各种管理操作。 ... [详细]
  • MySQL Administrator: 监控与管理工具
    本文介绍了 MySQL Administrator 的主要功能,包括图形化监控 MySQL 服务器的实时状态、连接健康度、内存健康度以及如何创建自定义的健康图表。此外,还详细解释了状态变量和系统变量的管理。 ... [详细]
  • MySQL Hash函数与基础总结(一)
    本文探讨了MySQL中常见的错误提示“不存在此列”的产生原因,以及查询缓存的优缺点。同时,介绍了如何关闭查询缓存,MySQL的常用存储引擎及其特点,以及如何针对表级别设置不同的存储引擎。 ... [详细]
author-avatar
史军2927
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有