Является ли JSON лучше, чем частичные представления для всех вариантов использования в ASP.NET MVC? - PullRequest
4 голосов
/ 07 апреля 2011

В jQuery есть утилита, называемая шаблоном данных, которая может визуализировать данные через систему шаблонов.

Шаблоны данных лучше, чем RenderPartial?

Может кто-нибудь объяснить свой опыт с этим.

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

Так что же является лучшим вариантом в ASP.NET MVC?

Ответы [ 4 ]

3 голосов
/ 07 апреля 2011

Я предполагаю, что вы работаете с MVC и имеете в виду частичные представления.

Рендеринг частичных представлений на сервере выполняется за один проход и является частью структуры страницы.Ajax звонки сначала загрузят страницу, а затем добавят дополнительный контент.

Частичное представление даст вам SEO индексацию.Ajax-вызов дает вам начальную скорость загрузки страницы.

Как правило, вы хотите максимально увеличить первоначальную загрузку страницы, а затем добавить динамический контент / элементы обратной связи через ajax для улучшения взаимодействия с пользователем.

1 голос
/ 07 апреля 2011

Они оба являются полезными и действительными способами визуализации части страницы.

Я бы сказал, что частичные представления более гибкие, поскольку они не зависят от javascript и могут помочь сохранить ваш сайт доступным, если это необходимо.работать с и без JavaScript.Помните, что вы можете загрузить PartialView в div из метода действия, вызванного через AJAX.

Однако, если уклон вашего сайта связан с богатым пользовательским интерфейсом с несколькими страницами и большей частью логики, управляемой javascript, то имеет смысл использовать шаблоны jQuery.Это было бы незначительно быстрее из-за меньшей полезной нагрузки (хотя не слишком много, если учесть, что вы обычно просто пропускаете небольшую разметку).

Обычно я использую частичные представления, поскольку для моего javascript требуетсябыть ненавязчивым, и было бы больше работы за небольшую выгоду, чтобы использовать шаблоны вместо того, чтобы возвращать частичные представления через AJAX.

1 голос
/ 07 апреля 2011

По своему опыту я бы просто сказал Да.Теперь позвольте мне объяснить, что вкратце:

Самая большая проблема с RenderPartial и UpadtePanel WebForms ) является простым фактом, чтофактическая генерация html (то есть вывод) генерируется на стороне сервера, поэтому все, что вы получаете на клиенте, это замена обновленного элемента DOM новым содержимым.

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

Теперьхорошая вещь с jQuery Templates заключается в том, что вся связь с сервером осуществляется через JSON (скорее всего), а объем данных значительно уменьшается.И это также дает вам свободу для простого изменения желаемого результата без необходимости изменять серверную логику (например, повторное развертывание приложения при каждом изменении).

0 голосов
/ 09 апреля 2011

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

http://www.google.com/search?sourceid=chrome&ie=UTF-8&q=jquery+template+vs+partial+views

Также взгляните на этот вопрос из stackoverflow:
Шаблоны jQuery и частичные представления в ASP.NET MVC

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