VaryByControl究竟是按控件的什么属性进行缓存的
Hi, 大家好。
在asp.net的输出缓存中,VaryByControl究竟是按控件的什么属性进行缓存的?比如
<%@ OutputCache Duration="30" VaryByControl="dropDownList1" %>
...
<asp:DropDownList runat="server" ID="dropDownList1">
...
在网站看的资料中,都只说是当DropDownList发生改变时,就缓存一个新版本,那什么叫“DropDownList发生改变”啊?这也太含糊了,究竟是DropDownList的所有任何一个属性发生改变时缓存新版本呢?还是可以怎么设置当特定属性改变时缓存新版本?
(我在一个aspx页面中测试了DropDownList,只有当SelectedValue发生改变时才会缓存新版本)。
Thanks in advance.
在asp.net的输出缓存中,VaryByControl究竟是按控件的什么属性进行缓存的?比如
<%@ OutputCache Duration="30" VaryByControl="dropDownList1" %>
...
<asp:DropDownList runat="server" ID="dropDownList1">
...
在网站看的资料中,都只说是当DropDownList发生改变时,就缓存一个新版本,那什么叫“DropDownList发生改变”啊?这也太含糊了,究竟是DropDownList的所有任何一个属性发生改变时缓存新版本呢?还是可以怎么设置当特定属性改变时缓存新版本?
(我在一个aspx页面中测试了DropDownList,只有当SelectedValue发生改变时才会缓存新版本)。
Thanks in advance.
...全文
请发表友善的回复…
发表回复
wangning08115 2011-04-26
- 打赏
- 举报
什么叫做“产生改变”呢?就是当控件产生“回发”时。这就叫“改变”,回发明白吧,DropDownList,SelectedValue改变时就会产生回发。DropDownList 的话你要设置自动回发属性AutoPostback=true。
别的控件的话比如按钮,自动就会回发,不用人工设置。
别的控件的话比如按钮,自动就会回发,不用人工设置。
水言木 2009-03-23
- 打赏
- 举报
[Quote=引用 1 楼 wang355 的回复:]
按照控件ID进行的,如果是多个控件,中间用分号分隔开
[/Quote]
嗯...我指的不是这个意思:(
按照控件ID进行的,如果是多个控件,中间用分号分隔开
[/Quote]
嗯...我指的不是这个意思:(
水言木 2009-03-23
- 打赏
- 举报
[Quote=引用 2 楼 wang355 的回复:]
所谓的改变是改变DropDownList的选择相,当选择相改变的时候就改变缓存信息
[/Quote]
我这DropDownList只是举个例子,但如果是其它控件呢,如果是我自己的用户控件呢,就没有SelectedValue这个属性了?那要怎么才叫“控件发生改变”?
所谓的改变是改变DropDownList的选择相,当选择相改变的时候就改变缓存信息
[/Quote]
我这DropDownList只是举个例子,但如果是其它控件呢,如果是我自己的用户控件呢,就没有SelectedValue这个属性了?那要怎么才叫“控件发生改变”?
wang355 2009-03-23
- 打赏
- 举报
所谓的改变是改变DropDownList的选择相,当选择相改变的时候就改变缓存信息
wang355 2009-03-23
- 打赏
- 举报
按照控件ID进行的,如果是多个控件,中间用分号分隔开