化繁为简,最简易的SqlDataSource配合Cache使用~
最近一个小项目用了DevExpress控件,实践中DevExpress的控件确实很方便。
在用ASPxGridView控件的时候,为了偷懒结合了SqlDataSource使用,但一直在大数据列表上表现的不太理想
本着最简洁优化的角度,翻了翻SqlDataSource的Cache属性,结合到项目使用效果还不错
Gird代码就不贴了,贴下SqlDataSource的配置:
当然Cache还有其他的设置,比如设置缓存时间,和刷新策略,比如CacheExpirationPolicy=Sliding属性,可设置每次操作之后会重置缓存计数时间
这里主要使用的是CacheKeyDependency,用来和自动生成的缓存建立KEY依赖,更改了CacheKeyDependency的值就相当于重新建立了缓存~
想当于手动刷新了缓存,知道这点你想什么时候刷新缓存数据都可以了~
<asp:SqlDataSource ID="DSMain" runat="server" ConnectionString="<%$ ConnectionStrings:OraConnStr %>" ProviderName="<%$ ConnectionStrings:OraConnStr.ProviderName %>"
EnableCaching="true" CacheKeyDependency="MyCacheKey"/>
Dev重加载,为了提示用户体验,使用了异步Callback
<dx:ASPxButton ID="ASPxButton1" runat="server" Text="重新加载数据" AutoPostBack="false">
<ClientSideEvents Click="function validate(s, e) {
var r=confirm('确定要重新加载数据吗?')
if (r!=true)
e.processOnServer = false;
else
ReloadCallback.PerformCallback();
}" />
</dx:ASPxButton>
<dx:ASPxCallback runat="server" ID="ReloadCallback" ClientInstanceName="ReloadCallback" OnCallback="ReloadCallback_OnCallback">
<ClientSideEvents CallbackComplete="function(s,e){ShowReloadResult(e);}"></ClientSideEvents>
</dx:ASPxCallback>
protected void ReloadCallback_OnCallback(object source, CallbackEventArgs e)
{
Cache["MyCacheKey"] = DateTime.Now; e.Result = true.ToString();
}
function ShowReloadResult(e) {
if (e.result == "True")
if (confirm('重新加载成功,需要自动刷新页面吗~') == true)
window.location.reload();
}
化繁为简,最简易的SqlDataSource配合Cache使用~的更多相关文章
- verilog简易实现CPU的Cache设计
verilog简易实现CPU的Cache设计 该文是基于博主之前一篇博客http://www.cnblogs.com/wsine/p/4661147.html所增加的Cache,相同的内容就不重复写了 ...
- Node.js简易服务器,配合type="module" 实现html文件script标签 ES module引入模块
相信大家在测试type="module" 在html文件中直接模块化引入 js时,会出现一个跨域问题. 当我们将<script ></scirpt> 标签t ...
- Cache选型的一些思考
Cache对于减轻DB负载有非常关键的数据.以下对经常使用的memcached和redis做个总结,便于技术选型. 1 memcached (1) 支持的操作有限,支持经常使用的set,get,de ...
- Cache
在选择的几点思考
Cache为缓解DB装有重要数据,下面经常使用memcached和redis要总结,促进技术的选择. 1 memcached (1) 有限支持的操作,持经常使用的set.get.delete和过期删 ...
- 【STM32H7教程】第24章 STM32H7的Cache解读(非常重要)
完整教程下载地址:http://www.armbbs.cn/forum.php?mod=viewthread&tid=86980 第24章 STM32H7的Cache解读(非常重要 ...
- Ehcache和Spring整合
Ehcache是使用Java编写的缓存框架,比较常用的是,整合在Hibernate和MyBatis这种关系型数据库持久框架. 不过现在用NoSQL也比较盛行,要应用Ehcache,整合起来就没法按照那 ...
- mysql优化之索引优化
Posted by Money Talks on 2012/02/23 | 第一篇 序章第二篇 连接优化第三篇 索引优化第四篇 查询优化第五篇 到实战中去 索引优化 索引优化涉及到几个方面,包括了索引 ...
- PWA(Progressive Web App)入门系列:(一)PWA简单介绍
前言 PWA做为一门Google推出的WEB端的新技术,长处不言而喻.但眼下对于相关方面的知识不是非常丰富.这里我推出一下这方面的新手教程系列.提供PWA方面学习. 什么是PWA PWA全称Progr ...
- HTTP-API-DESIGN 怎样设计一个合理的 HTTP API (一)
这个附件的幻灯片是我最近给团队分享关于设计 HTTP API 的时候,结合 这篇 和我们团队历史上的一些错误,总结出来一些适合内部的经验. 简介. 这次分享主要关注以下几部分: HTTP + JSON ...
随机推荐
- tomcat 配置项目指定域名
<Host name="www.xxx.com" appBase="D:/tomcat/webapps/web"> <alias>xxx ...
- [数据库]redis与redis操作
网上搜了以下redis的入门操作,全TM的关于怎么安装配置和性能特点的. 基本的CRUD(Create, Read, Update, Delete)就谁也没说,简直气疯了. 先记录下自己常用的命令,后 ...
- Javascript实现页面加载完成后自动刷新一遍清除缓存文件
我们有些时候在加载页面时,会出现缓存文件对当前文件的表现效果有干扰,如有些缓存的样式文件会是页面效果发生改变,这时我们希望页面在加载时能自动刷新一遍清楚缓存文件. 但是由于跳转页面肯定会用到BOM部分 ...
- java并发编程(十)使用wait/notify/notifyAll实现线程间通信
转载请注明出处:http://blog.csdn.net/ns_code/article/details/17225469 wait()方法:public final void wait() thr ...
- 用Java实现简单的web服务器
运行结果: 1.WebServer.java文件 package webserver; import java.io.*; import java.net.*; public class WebSer ...
- 一、jquery简介
认识jquery jquery是有美国人John Resig于2006年创建的一个开元项目,随着被人们的熟知,越来越多的程序高手加入其中,完善和壮大其项目内容:如今已开展成为集javascript.c ...
- Matlab的标记分水岭分割算法
1 综述 Separating touching objects in an image is one of the more difficult image processing operation ...
- C语言3
C语言的学习已经进入尾声,再过几天就要考试了,今天我们用C语言做了一个推箱子的游戏.就相当于复习以前的知识啦,但是感觉好难啊,但是老师教我们用函数的思想,让我们"分",把问题分解开 ...
- 好程序与差程序Good Programming, Bad Programming
好程序与差程序 Good Programming, Bad Programming 发布时间: 2012-11-20 16:32:21| 阅读数:2,735 views 优秀的程序可以使复杂的东西看起 ...
- 《UML大战需求分析》阅读笔记04
在学习了前面的几种UML图并不能满足所有情况的建模,如当流程图涉及到多种角色,并且通过对多种角色交互展开时,顺序图才是不二选择.顺序图就如同中文语法的说话语言相似,描述的是一种事件发生的顺序.顺序图分 ...