页面输出缓存
当用户访问页面时,整个页面将会被服务器保存在内存中,这样就对页面进行了缓存。
当用户再次访问该页,页面不会再次执行数据操作,页面首先会检查服务器中是否存在缓
存,如果缓存存在,则直接从缓存中获取页面信息,如果页面不存在,则创建缓存。
其实我想问的是第二次打开我的首页我的load加载事件难道不执行了,直接去访问缓存?
当用户访问页面时,整个页面将会被服务器保存在内存中,这样就对页面进行了缓存。
当用户再次访问该页,页面不会再次执行数据操作,页面首先会检查服务器中是否存在缓
存,如果缓存存在,则直接从缓存中获取页面信息,如果页面不存在,则创建缓存。
其实我想问的是第二次打开我的首页我的load加载事件难道不执行了,直接去访问缓存?
解决方案 »
- 请问在gridview 中怎么显示用户性别问题?
- 請問哪有MSDN2003(繁體)下載?注意,是繁體啊
- 使用代码创建控件如何设置控件ID
- 怎么知道进入我的网站的客户是从什么网页点击过来的?
- 日期的问题
- 请问如何使textbox获取蕉点
- owc画的饼图怎么不是三维的?已经使用图表类型chChartTypePieExploded3D
- 各位大虾,请教一个关于TabStrip的用法问题
- 《asp.net 入门经典 c#编程篇》是beta2版的,影响我的学习不
- DataGrid如何让某行获得焦点并加量显示?
- 在线等,问题解决,立马给分,急急急!!前台js事件里怎么调用后台方法?我的代码总是报错,
- .net中怎么使用ac_runactivecontent.js
{
string _cond = " Where cCusCode=@cCusCode ";
ba_customerinfo _param = new ba_customerinfo();
_param.cCusCode = cCusCode;
if (ic.Delete(_cond, _param) > 0)
{
clearCache2();
return true;
}
return false;
} public DataTable GetInfoList()
{
DataTable dt = cache.RetrieveObject(_index_cache_path2) as DataTable;
if (dt == null)
{
string query = "Select * From BA_Customer";
dt = dbt.ExecuteTable(query, null);
dt.PrimaryKey = new DataColumn[] { dt.Columns["cCusCode"] };
cache.AddObject(_index_cache_path2, dt);
}
return dt;
}
所以 其实我想问的是第二次打开我的首页我的load加载事件难道不执行了,直接去访问缓存?当缓存有效时,服务器直接返回缓存中的html给客户端
VaryByParam="none" VaryByCustom="browser" VaryByControl="TextBox1"%>
上面的时间如果不加会怎么样 将服务器控件TextBox1 的每个不同的值进行缓存处理
还有困扰我的是如何去判断缓存存在呢
第一次肯定是没有缓存的 所以他会load事件
第二次有缓存我的load事件就不执行直接调用缓存来显示是吗
如果是 页面部分缓存那么我VaryByControl="TextBox1" 这样我值是如果是1那么他会生成缓存是1的查询记录
如果是2生成缓存是2的记录 当第二次或者以后textbox值是1或者2的时候直接调用缓存了吗
感谢各位 不知道我说的对不对
现在用的是公司的框架 如果莫一天的离开了这个框架那就意味着我……所以只有不断成长才是恒道理
楼上我刚刚说的给点意见啊 谢谢
<%@ OutputCache Duration="9999999" VaryByParam="None" %>
我上述的说法是指默认情况下,并未考虑到片段缓存或缓存后替换相关技术。像上述的情况下,缓存在内存中的就是html
如果不是html的话
protected void Page_Load(object sender, EventArgs e)
{
Response.Write(System.DateTime.Now.ToString());
}
这样的事件岂不是每次都要执行?
http://msdn.microsoft.com/zh-cn/library/ms178597(v=vs.100).aspx输出缓存是一类针服务器应用程序的典型缓存。利用输出缓存,可以存储呈现的 HTML。提供存储的 HTML 以响应相同页的后续请求