在ASP.NET中获取缓存控件
我在ASP.NET网络控制中使用以下功能:在ASP.NET中获取缓存控件,asp.net,caching,webforms,outputcache,web-controls,Asp.net,Caching,Webforms,Outputcache,Web Controls,我在ASP.NET网络控制中使用以下功能: <%@ OutputCache Duration="86400" VaryByParam="none" %> 但是,它将在else中引发以下异常: 文件“/Bradspel/sites/MySite/community/topGames\u Mini1”不存在 存在 您最好将UserControl放在控件中。然后根据您的条件隐藏/显示占位符 占位符本身不呈现任何标记,因此没有外部HTML标记的开销 我想您一定已经在母版页中注册了UserC
<%@ OutputCache Duration="86400" VaryByParam="none" %>
但是,它将在else中引发以下异常:
文件“/Bradspel/sites/MySite/community/topGames\u Mini1”不存在
存在
您最好将UserControl放在控件中。然后根据您的条件隐藏/显示占位符 占位符本身不呈现任何标记,因此没有外部HTML标记的开销 我想您一定已经在母版页中注册了UserControl。因此,现在将userControl放置在占位符控件中
<asp:ContentPlaceHolder ID="MainContent" runat="server"><!-- Of Master Page -->
<asp:PlaceHolder ID="place1" runat="server">
<uc1:Test ID="Test1" runat="server" /><!-- Our User Control-->
</asp:PlaceHolder>
</asp:ContentPlaceHolder>
<asp:ContentPlaceHolder ID="MainContent" runat="server"><!-- Of Master Page -->
<asp:PlaceHolder ID="place1" runat="server">
<uc1:Test ID="Test1" runat="server" /><!-- Our User Control-->
</asp:PlaceHolder>
</asp:ContentPlaceHolder>
protected void Page_Load(object sender, EventArgs e)
{
if( _Some_Condition_)
place1.Visible = true;
else
// Hide PlaceHolder and thus all controls inside it
place1.Visible = false;
}