为什么当父页面具有 Outputcache 指令时仍会调用控件的加载事件?
我有一个带有用户控件的页面。如果我将此 Outputcache 指令放在控件上,则控件上的加载事件不会触发
<%@ OutputCache Duration="3600" VaryByParam="id" %>
,但如果我将相同的指令放在控件所在的页面上,则加载事件会触发。为什么行为会有所不同?我们正在使用 WebFormsMVP 框架。
I have a page with a user control on it. If I put this outputcache directive on the control, the load event on the control doesn't fire
<%@ OutputCache Duration="3600" VaryByParam="id" %>
But if I put the same directive on the page that the control is on, the load event does fire. Why would the behaviour be different? We're using the WebFormsMVP framework.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
标准 aspx/ascx 页面绝对不应该发生这种情况,因此我猜测这是 WebFormsMVP 特有的情况。
我对 WebFormsMVP 不太熟悉,但您确定 OutputCache 指令在那里起作用吗?例如忘记用户控件,只需写出 <%= DateTime.Now %>从页面本身。如果您没有获得任何缓存行为,那么您就将用户控制部分排除在外。
不是完整的答案,但可能是向前迈出的一步:)
That definitely should not happen with standard aspx/ascx pages, so I'm going to guess it's something specific to WebFormsMVP.
I'm not too familiar with WebFormsMVP, but are you sure that the OutputCache directive works at all in there? e.g. forget the user control, and simply write out <%= DateTime.Now %> from the page itself. If you don't get any caching behavior, then you've taken the user control part out of the equation.
Not a full answer, but possibly a step forward :)