Перестроить всю страницу на обратный звонок? - PullRequest
3 голосов
/ 15 марта 2010

В asp.net это требование перестраивать всю страницу при каждом обратном вызове? Например, моя веб-страница разделена на три отдельные области, и у меня есть панель обновления для каждой области. Допустим, я хочу обновить третью область. Нужно ли мне заниматься обработкой двух других областей?

Например, предположим, что в области два есть вид сетки. Панель обновления в области трех обратных вызовов обновляет свой контент. Нужно ли заново привязывать сетку во второй области?

Спасибо

AJ

Ответы [ 2 ]

1 голос
/ 15 марта 2010

По умолчанию «UpdateMode» установлен на «Always» для UpdatePanels, что означает, что они обновляются всякий раз, когда что-либо «происходит» на странице.

Попробуйте установить «UpdateMode» в «Conditional» для всех ваших трех UpdatePanels и посмотрите, поможет ли это. (FWIW это стандартная практика для меня как часть написания определения UpdatePanel. Если вам нужно обновить UpdatePanel, когда что-то происходит в другой части страницы, вы можете использовать Triggers или обновить его с помощью .Update () в коде позади)

bgs264

Редактировать

Мне кажется, я неправильно понял ваш вопрос; Мое предложение выше может улучшить время рендеринга страницы, поскольку частичные обратные передачи приводят к меньшему количеству кода, отправляемого между клиентом и сервером.

Но, как и в случае с другим ответом, все элементы управления должны проходить свой жизненный цикл (Init, Load, Render) при каждой загрузке / обратной передаче страницы.

1 голос
/ 15 марта 2010

Да, так делается ASp.NET. Если вы используете частичное обновление updatePanel / AJAX, вы можете избежать создания только части страницы. Но тогда ваша точка зрения может быть проблемой.

То, что вы видите, является одним из недостатков модели ASP.NET.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...