Вопрос

У нас есть страница с тонной jQuery (около 2000 строк), которую мы хотим сократить, потому что это кошмар для обслуживания, и, возможно, ее будет проще поддерживать на сервере.Мы подумали об использовании для этого UpdatePanel.Однако нам не нравится тот факт, что UpdatePanel отправляет всю страницу обратно на сервер.

Это было полезно?

Решение

Не переходите в UpdatePanels.После перехода из jQuery, падение производительности было бы несостоятельно.Особенно на такой сложной странице, как ваша.

Если у вас есть 2000 строк кода JavaScript, решение состоит в рефакторинге этого кода.Если вы поместите 2000 строк кода C# в один файл, его тоже будет сложно поддерживать.Этим будет трудно эффективно управлять с любой язык или инструмент.

Если вы используете версию 3.5 SP1, вы можете использовать новый скрипт ScriptManager для разделения вашего JavaScript на несколько файлов без каких-либо штрафов.Таким образом, вы можете логически разделить свой код так же, как и код на стороне сервера.

Другие советы

Пожалуйста, не погружайте себя в этот мир боли.Вместо этого используйте UFRAME что намного быстрее и реализовано в jQuery.

Теперь, чтобы управлять этими 2000 строками кода Javascript, я рекомендую разделить код на разные файлы и настроить процесс сборки, чтобы объединить их с помощью JSMin или Yahoo Compressor в куски.

Я не знаю, есть ли способ оптимизировать UpdatePanels, но моя компания обнаружила, что его производительность довольно низкая.jQuery гораздо быстрее делает практически все.

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

Единственная причина, по которой мы используем UpdatePanels, — это простота разработки.Чтобы они заработали, почти ничего не нужно делать.

Использование UpdatePanel вынуждает вас использовать ScriptManager, который добавляет множество скриптов на ваши веб-страницы.UpdatePanel обеспечивает частичную обратную передачу, а не настоящий ajax.Если вы будете работать только в локальной сети, а не в Интернете, это нормально, но если ваша цель — Интернет, попробуйте рефракционировать свои коды и сжать их с помощью некоторых инструментов перед публикацией на веб-сайте.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top