Я использую следующий в WebControls ASP.NET:Fetch кэшированных управлений в ASP.NET
<%@ OutputCache Duration="86400" VaryByParam="none" %>
Это означает, что контроль будет аннулирован на перезагрузке, если он уже добавлен в кэш. Проблема в том, что на какой-то странице я хочу скрыть этот элемент управления, и было бы замечательно, если бы это можно было сделать из файла кода MasterPage (где он был загружен).
Я попытался это:
if (Request.AppRelativeCurrentExecutionFilePath.ToLower().EndsWith("/sites/MySite/default.aspx") || Request.AppRelativeCurrentExecutionFilePath.ToLower().EndsWith("MySite.net"))
{
if(topGames_Mini1 != null)
{
//Load control
topGames_Mini1.visible=true;
}
}
else
{
Page.LoadControl("topGames_Mini1").Visible = false;
}
Это будет, однако, бросить следующее исключение в другой:
файл '/ Bradspel/сайтов/MySite/сообщества/topGames_Mini1' не существовать.