如何实现基于服务的SQL数据依赖缓存?

问题描述

protectedvoidPage_Load(objectsender,EventArgse){stringstrsn="DataSource=OSTP002;InitialCatalog=MSPetShop4;UserID=sa;Password=sql";SqlDependency.Start(strsn);if(!Page.IsPostBack){DataSetds=newDataSet();if(Cache["ds"]==null){SqlConnectionsn=newSqlConnection(strsn);SqlCommandsc=newSqlCommand("selectItemId,ProductId,ListPricefromdbo.Item",sn);SqlDataAdaptersda=newSqlDataAdapter(sc);sda.Fill(ds);SqlCacheDependencyscd=newSqlCacheDependency(sc);Cache.Insert("ds",ds,scd);Response.Write("数据过期,重新读取数据");}else{ds=(DataSet)Cache["ds"];Response.Write("缓存读取");}GridView1.DataSource=ds;GridView1.DataBind();}}当我在05数据库修改表数据后缓存不过期,请高手指点

解决方案

解决方案二:
你这个条件就第一次的时候不成立if(Cache["ds"]==null)接下去不是都不为空对象么
解决方案三:
缓存依赖有几种:SQL依赖文件依赖绝对时间依赖你可以使用其他依赖,或者混合依赖
解决方案四:
顶一下
解决方案五:
该回复于2007-12-04 11:18:59被版主删除
解决方案六:
SqlCacheDependencyDatabaseconnectionStringName必需的String属性。为数据库设置连接字符串名称。在connectionStrings元素(ASP.NET设置架构)配置节中引用连接字符串。name必需的String属性。要添加到配置集合中的SqlCacheDependencyDatabase对象的名称。此名称用作@OutputCache指令上SqlDependency属性的一部分。pollTime可选的Int32属性。设置SqlCacheDependency轮询数据库表以查看是否发生更改的频率(以毫秒计算)。父元素元素说明configuration公共语言运行库和.NETFramework应用程序所使用的每个配置文件中均需要的根元素。system.web指定配置文件中ASP.NET配置设置的根元素。包含各种配置元素,这些配置元素配置ASP.NETWeb应用程序并控制这些应用程序的行为方式。caching为Web应用程序配置缓存设置。sqlCacheDependency定义SqlCacheDependency类使用的设置。databases包含一个或多个可以由SqlCacheDependency使用的命名的SQL连接。------------------------------------------------------------总结:需要配置连接的数据库和数据对象还有WebConfig

时间: 2024-08-19 11:49:57

如何实现基于服务的SQL数据依赖缓存?的相关文章

读书笔记-《基于Oracle的SQL优化》-第一章-1

开始学习崔老师的<基于Oracle的SQL优化>,七百多页,虽然可能会比较痛苦,但想必是一个痛并快乐的过程,尽情享受了... 第一章:Oracle里的优化器 优化器是Oracle数据库中内置的一个核心子系统,可以理解为一个核心模块或者一个核心功能组件.优化器的目的是按照一定的判断原则来得到它认为的目标SQL在当前情形下最搞笑的执行路径,也就是说,优化器的目的是为了得到目标SQL的执行计划. RBO内置的等级1所对应的的执行路径就是"single row by rowid(通过rowi

基于服务的企业集成模式轻松入门,第1部分:基本概念的演变

引言 使一个企业中的所有应用程序以集成方式运行以便提供统一而一致的数据和功能是一项非常艰难的任务.这涉及到各种应用程序,如自主构建的应用程序(C++.Java 或 Java 2 Platform, Enterprise Edition [J2EE]).打包的应用程序(如 SAP CRM 应用程序)以及遗留应用程序(大型机 IBM CICS 或 IBM Information Management System [IMS]).而且,这些应用程序可能分布在不同的地理位置,并可能运行于各种平台上.这可

基于LINQ TO SQL的多层架构中,如何将实体附加至不同的DataContext

注意: 1.本文中所提到的"实体"均为由LINQ TO SQL生成的(即.dbml) 2.你需要了解LINQ TO SQL对表关联的实现方式,EntitySet 和 EntityRef 也许你看到标题后,会觉得问题比较抽象,那么我举个实例来具体说明一下问题. 在基于LINQ TO SQL的N层架构中,假如我们需要对一个实体进行更新,那么流程应是这样: 流程 BLL.GetModel(p=>p.id==1) --> 修改相应属性(字段)值 --> BLL.Update(

mybatis-tomcat集群+oscache 启动服务时 log4j 打印缓存监听jgroups启动失败

问题描述 tomcat集群+oscache 启动服务时 log4j 打印缓存监听jgroups启动失败 使用两个虚拟机搭建了一个小型tomcat集群,发布web项目(内置oscache缓存机制) oscache.properties广播配置为官方配置,网上资料一大堆,不再描述. tomcat服务器正常启动,具体问题描述如下: 问题1:启动tomcat服务器,log4j打印oscache错误信息如下: 2015-03-05 15:14:47,697 INFO GeneralCacheAdminis

求救 pymssql怎么都连不上 服务中sql server代理也启动不了

问题描述 求救 pymssql怎么都连不上 服务中sql server代理也启动不了 Traceback (most recent call last): File ""pymssql.pyx"" line 630 in pymssql.connect (pymssql.c:10097) File ""_mssql.pyx"" line 1887 in _mssql.connect (_mssql.c:20477) File

SOA之基于服务总线的设计

在上文中,主要介绍了SOA的概念,什么叫做"服务","服务"应该具备哪些特性.本篇中,我将介绍SOA的一种很常见的设计实践--基于服务总线的设计. 基于服务总线的设计 基于总线的设计,借鉴了计算机内部硬件组成的设计思想(通过总线传输数据).在分布式系统中,不同子系统之间需要实现相互通信和远程调用,比较直接的方式就是"点对点"的通信方式,但是这样会暴露出一些很明显的问题:系统之间紧密耦合.配置和引用混乱.服务调用关系错综复杂.难以统一管理.异构系统

怎么做求帮助-基于Web的SQL Server数据库实验平台

问题描述 基于Web的SQL Server数据库实验平台 传统数据库课程实验教学存在课时安排不足.学生在课外实验又缺乏有效的指导和教师无法进行有效监督等问题.该题目要求实现一个基于Web的SQL Server数据库实验平台,使得学生能够在任何地点.时间通过 Internet 进行数据库相关的增. 删.改.查等数据库实验,同时教师可以布置数据库实验,监控和指导学生的实验等. 想知道用什么工具 怎么做呀 如何在internet上用sql语句进行相关的增删除改啊

微服务架构之外的选择——基于服务架构

来自ThoughtWorks的主管Neal Ford在最近的一次演讲中表达了他对企业软件系统架构转型的看法,他认为从单体架构转向基于服务的架构要比转向微服务架构来得容易.Ford在UberConf 2016大会上做了一次关于基于服务架构的演讲,基于服务架构是介于面向服务架构和微服务架构之间的一个中间地带.这里可以下载演讲幻灯片(PDF格式). 微服务架构有很多优点,不过Ford建议应该把这些优点应用在新开发的项目上.对于已经采用了单体架构的组织来说,转向微服务架构有很多问题需要解决:分离代码,分

vs2012创建不了基于服务的数据库

问题描述 如题,在VS2012里创建控制台程序后,添加一个新建项,选基于服务的数据库出现如下提示我装了sqlserver2008,好像是企业版,难道一定要express版?不至于吧 解决方案 解决方案二:怎么是直接访问数据库文件?你当sqlserver是access么不是应该通过sqlclint或ODBC去连么