【发布时间】:2011-03-03 00:29:45
【问题描述】:
这件事快把我逼疯了。我有一个名为 WebUserControl 的 UserControl。
我需要缓存这个控件,所以我在WebUserControl.ascx中放了以下内容:
<%@ OutputCache Duration="240" VaryByParam="FeedName" %>
然后我有我拥有的 Default.aspx 文件:
<div class="divInnerLeft" id="L1" runat="server">
<uc1:WebUserControl FeedId="a1" ID="a1" runat="server" FeedName=""/>
</div>
<div class="divInnerMiddle" id="M1" runat="server">
<uc1:WebUserControl FeedId="a3" ID="a3" runat="server" FeedName=""/>
</div>
在 Page_Load 事件中,我根据用户偏好设置了 FeedName 属性。
问题是在初始加载页面后,控件生成OK。但是,在 Page_Load 事件中,它们不再可用。所以 a1 和 a3 为空,我无法为不同的用户设置 FeedName。
如何解决?
谢谢!
【问题讨论】:
-
RPM1984:谢谢提示。我不想实现的是让我们在页面上说四个用户控件。当页面加载时,我为用户控件设置了一些参数,显示的控件是给定参数的缓存控件。 VaryByContol 也无济于事:(
-
好的 - 我明白你现在要做什么了。查看类似的 SO 问题:stackoverflow.com/questions/880937/….
标签: asp.net caching user-controls