Почему моя MasterPage UpdatePanel вызывает Page_Load на моей ContentPage? - PullRequest
0 голосов
/ 30 августа 2018

Мой код в моей MasterPage вызывает полную загрузку страницы на моих страницах контента каждые 5 секунд. К сожалению, это означает, что это ломает некоторые из моих страниц содержания и как они запрограммированы. Я надеялся, что отдельная UpdatePanel позволит обновлять только этот регион и не будет обновлять другие UpdatePanel и ресурсы на страницах контента.

Я попытался переместить таймер из UpdatePanel, изменив UpdatePanel на UpdateMode = "Conditional" и даже используя стороннюю AjaxPanel (Telerik).

Все результаты одинаковы, страница содержимого перезагружается каждые 5 секунд, очищая шаблон заголовка (показан ниже) и иногда нарушая некоторые функции на сайте.

Пока я не найду способ ТОЛЬКО получить буквальное обновление без перезагрузки других ресурсов, я должен оставить Таймер отключенным.

Я буду рад опубликовать больше кода, если это необходимо, но я не хотел предоставлять информацию, которая может не иметь никакого значения.

MasterPage - Site.Master

<title><%: Page.Title %> - My ASP.Net Site</title>

<asp:UpdatePanel ID="UpdatePanelMenu" runat="server">
    <ContentTemplate>
        <span>Tickets<asp:Literal ID="LiteralUnassignedTickets" runat="server"></asp:Literal></span>
        <asp:Timer ID="TimerAutoRefreshMenu" runat="server" Interval="5000" Enabled="true"></asp:Timer>
    </ContentTemplate>
</asp:UpdatePanel>

1 Ответ

0 голосов
/ 30 августа 2018

если вам нужно использовать панели обновления, сделайте обновление панели обновления условным и установите таймер в качестве асинхронного триггера (очень важно). панели обновления еще хуже, когда они находятся на главных страницах, чем когда они находятся на странице содержимого.
Лучшая опция для минимального изменения - setTimeout для функции, которая выполняет ajax-вызов для обновления количества неназначенных билетов. Вы можете увеличить это, чтобы обновить целую кучу полей / элементов, используя объект json. Плюс техники могут быть очень полезны, если вы перейдете в MVC.

...