Различия в JQuery и ASP.NET AJAX в MVC - PullRequest
2 голосов
/ 21 апреля 2009

Глядя на новую платформу ASP.NET MVC, она поставляется с файлами javascript для ASP.NET AJAX и JQuery.

Может кто-нибудь объяснить, что ASP.NET AJAX дает мне, а JQuery нет?

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

Я использовал JQuery во многих проектах, не относящихся к ASP.NET (PHP и сайты-прототипы), и довольно успешно использовал JQuery Ajax, но я не уверен, что лучше всего использовать для ASP.NET.

Спасибо за ваше время Sniffer

Ответы [ 4 ]

2 голосов
/ 21 апреля 2009

Я недавно писал страницы ASP.NET MVC без Microsoft AJAX. Выводы? Вам нужно сделать немного больше проводки, чтобы она работала, особенно с серверной связью (совет: используйте JSON.NET, а не встроенные средства), но она намного короче и более читаема. Я больше не буду использовать Microsoft AJAX.

ASP.NET AJAX дает вам:

  1. набор элементов управления ASP.NET, которые обеспечивают функциональность AJAX. Это больно в использовании и еще более болезненно писать. Расширения jQuery намного чище, но для программиста ASP.NET имеют более сложную кривую обучения.
  2. Возможность автоматически генерировать классы, которые выполняют вызовы AJAX. Это действительно круто, но вы можете жить без этого.
  3. Пространство имен и модель событий, которая вам не понадобится, если вы будете программировать стиль jQuery.
  4. Возможность частичного рендеринга страниц. Полезно, только если вы не используете MVC, и редко рекомендуется даже тогда.

Вывод: используйте jQuery, удалите Microsoft AJAX.

1 голос
/ 22 апреля 2009

Разница во мнениях тогда (!), Но спасибо за отзыв.

Для информации, я нашел эту ветку, которая немного яснее отвечает на мои вопросы.

jQuery против MicrosoftAjax в ASP.NET MVC

Я думаю, что я пойду только с jQuery для удобства, проще для чтения кода, небольшого размера файлов и т. Д. И посмотрим, как я поступлю.

Еще раз спасибо Sniffer

0 голосов
/ 30 ноября 2009

Asp.Net AJAX был разработан для веб-форм Asp.Net, а не MVC. Он был разработан, чтобы делать много вещей, которые уже сделал jQuery. До того, как MS согласилась, что объединение jQuery с Asp.Net MVC было хорошей идеей, Asp.Net AJAX - это все, что у них было.

Asp.Net AJAX пытается реплицировать часть серверной среды в браузере клиента - вы можете увидеть это с MS-подобными пространствами имен JS. Он был разработан для веб-форм, когда все основывалось на модели постбэк.

Парадигма MVC пытается отделить и упростить аспекты веб-разработки, честно говоря, как работает HTTP. Asp.Net AJAX не совсем вписывается в это пространство из-за того, насколько плотно он был разработан с WebForms. Точно так же, как вы можете взломать , чтобы элементы управления WebForms работали в MVC (поскольку он все еще построен на ядре ASP.NET), вы также можете заставить Asp.Net AJAX работать в MVC - но реальная точка это:

jQuery и MVC (по замыслу и определению) предназначались друг для друга.

(надеюсь, мой ответ не слишком субъективен: D)

0 голосов
/ 30 ноября 2009

Я использую JQuery для извлечения данных Json и Microsoft AJAX для отправки форм. Вы можете сделать оба с JQuery, но я не очень люблю сериализацию формы самостоятельно. В конце концов, Microsoft AJAX довольно приличный - если вам нужно самостоятельно писать меньше кода JavaScript, это меньше кода, который вам нужно поддерживать.

Итак, чтобы ответить на ваш вопрос - Microsoft AJAX на самом деле не добавляет ничего, чего нет в JQuery. Он просто позволяет вам использовать помощников, которые переводятся практически в тот же код JavaScript, который вы можете написать с помощью JQuery. Как я уже сказал - меньше кода JavaScript, который вы пишете самостоятельно, - это меньше кода, который вам нужно поддерживать.

Нет реальных примеров того, где вы должны или не должны использовать то или другое - это сводится к личным предпочтениям IMO.

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