2010-07-28 4 views
5

За последние 2 года JQuery стал все более популярным. Как вы думаете, настало время предпочесть JQuery для ASP.NET Ajax в проектах ASP.NET с Ajax? Имеет ли ASP.NET Ajax Control Kit будущее в мире ASP.NET?ASP.NET Ajax Control Kit против JQuery

ответ

3

Короткий ответ:

Если страница/сайт не в настоящее время в зависимости от управления UpdatePanel или ACT, определенно использовать JQuery и JQuery UI для любой новой работы. Это даже настоящая рекомендация Microsoft.

Длинный ответ:

Это важно иметь четкое представление о терминологии при работе с данной темой.

ASP.NET AJAX является частью клиентской стороны, но также и частью сервера. System.Web.Extensions поступает из Atlas и в конечном итоге интегрирована в ASP.NET 3.5. Даже если вы не используете ScriptManager или MicrosoftAjax.js, серверные части ASP.NET AJAX по-прежнему очень полезны для создания конечных точек на стороне сервера на основе JSON (и тех, которые may be called directly from jQuery, без ScriptManager).

jQuery и MicrosoftAjax.js несколько похожи, но оба делают то, что не делает другой. Не совсем точно сказать, что они конкурируют друг с другом; у них разные цели. Если ваше приложение имеет какие-либо обновления, у вас нет выбора, кроме как включить MicrosoftAjax.js (который автоматически запускается с помощью ScriptManager). jQuery и MicrosoftAjax.js хорошо играют вместе, поэтому, если вам нужно, вы все равно можете use jQuery's more powerful selectors, traversals, and animations in conjunction with UpdatePanels.

AJAX Control Toolkit (ACT) - это другой проект, полностью отделенный от ASP.NET AJAX. Это наиболее непосредственно сравнивается с jQuery UI, а не с самим ядром jQuery. Идя вперед, я думаю, мы увидим, что большинство элементов управления AJAX Control Toolkit на стороне клиента реорганизуются как плагины jQuery (это уже произошло в конце прошлого года, но они были вытащены).

В конечном счете, лучше использовать jQuery или jQuery UI поверх MicrosoftAjax.js или ACT, если эквивалентное решение существует в обоих. Однако, если вы привязаны к MicrosoftAjax.js с помощью UpdatePanels или другого существующего кода, не бойтесь смешивать jQuery с этим и медленно переходить на jQuery. Они отлично работают вместе.

1

На мой взгляд, jQuery лучше, чем Ajax Control Toolkit. Главная причина для меня - большая поддержка, которую сообщество дало. Мало того, что документация jQuery в Интернете лучше, но, поскольку jQuery не является платформой .NET-centric, сообщество больше, что означает, что любой разработчик Ruby on Rails для PHP-разработчика может помочь вам с вашим кодом так же хорошо как .NET-разработчик, которого было бы явно труднее найти.

Кроме этого, у меня была лучшая производительность, чем Toolkit, и мне гораздо легче писать против и настроить. И вы должны любить jQuery UI.

Кстати, имейте в виду, что просто включив ScriptManager на странице ASPX, вы загрузите кучу скриптов, которые добавят дополнительную нагрузку на вашу страницу. Что-то нужно иметь в виду, прежде чем смешивать jQuery и Toolkit.

+1

Справедливости ради. Добавление на страницу только ScriptManager добавляет только один скрипт на страницу (примерно такой же размер, как и ядро ​​jQuery). –

+0

Я имею в виду, что добавление сценариев jQuery, а также диспетчера сценариев довольно массивное. Если вы используете только один, я думаю, это круто. – rebelliard

1

думаю есть ASP.NET Ajax Toolkit jQuery под капотом. (это неправильно).

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

Таким образом, вы, вероятно, будете использовать оба: когда элемент управления существует в Ajax Toolkit, и вам нужны некоторые свойства/аксессоры на стороне сервера и т. Д., Используйте его, если вам нужны некоторые функциональные возможности, которые не предоставляются Инструментами, используйте чистый jQuery ,

Microsoft работает с сообществом jQuery и представляет для них некоторые исправления. Поэтому я предполагаю, что они продолжат поддерживать Инструментарий. Ajax Toolkit является только слоем поверх чистых jQuery функций и предоставляет серверные элементы управления.

Обновление:
Интересные цитаты из this blog:

Однако, с Visual Studio 2008 с пакетом обновления 1, мы также добавили поддержку для все более популярным JQuery библиотеки. То есть, вы можете использовать JQuery вместе с ASP.NET и также получить IntelliSense для JQuery в визуальных Studio 2008.

И:

Для стороны клиента программирования с использованием JavaScript для реализации AJAX в ASP.NET, рекомендуется использовать jQuery, который будет отправлен по адресу с Visual Studio и предоставляет также intellisense.

Для программирования на стороне сервера один из может использовать серверные элементы управления, такие как UpdatePanel и т. Д., а также контрольный набор инструментов AJAX , который теперь имеет около 40 элементов управления.

+0

Я еще не думаю, что это jQuery под капотом, но я подозреваю, что следующая версия будет ... – PhilPursglove

+0

Это не jQuery под капотом. Фактически «Атлас» был спроектирован непосредственно как конкурент, но на этот раз MS приняли силу jQuery и решили работать с ним, а не против него. Я ничего не читал о следующей версии, построенной на jQuery, но это было бы удобно, если бы это было так. – CJM

+0

Вы правы, это не основано на jQuery. Я исправил. Я ошибался в том, что Visual Studio поддерживает jQuery, включая библиотеку и обеспечивая поддержку Intellisense. –

2

jQuery является более популярным, в основном потому, что он независим от платформы, но это хорошая система в своем собственном праве.

Я не думаю, что что-то не так с ASP.NET AJAX для разработчиков на платформах Microsoft.

Я использовал оба варианта, но теперь я ошибаюсь в jQuery, главным образом из-за имеющихся ресурсов и образцов.

Означает ли это, что предложение MS обречено? Еще нет. Он будет существовать до тех пор, пока определенное количество людей использует его, но я думаю, что он всегда будет играть вторую скрипту в jQuery.

Если вы являетесь разработчиком только ASP.NET, загляните в оба варианта и используйте то, что вам больше подходит. Если вы разрабатываете на разных платформах, то оседание на jQuery может быть более целесообразным.

PS. есть и другие кросс-платформенные платформы AJAX ...

1

ASP.NET Ajax и набор инструментов ASP.NET Ajax - это две разные вещи. Инструментарий представляет собой набор элементов управления ASP.NET (и некоторых других). Это код на стороне сервера и некоторый javascript. ASP.NET Ajax - это структура приложения, которую вы можете использовать для создания и управления элементами управления на стороне клиента; это Javascript. Инструментарий ASP.NET Ajax основан на этой структуре.

jQuery и ASP.NET Ajax имеют некоторые перекрытия в функциональности, но они ни в коем случае не являются взаимоисключающими. jQuery в основном ориентирован на обновление и обработку разметки. ASP.NET Ajax предназначен для предоставления рамок приложения.

Microsoft недавно решила не конкурировать с jQuery, но инвестировать в нее, поскольку jQuery и ASP.NET Ajax работают вместе и дополняют друг друга. JQuery на самом деле shipped with Visual Studio.

Итак, чтобы ответить на ваш первый вопрос, вы должны использовать JavaScript, наиболее подходящий для задания, будь то jQuery или ASP.NET Ajax.

Хотите ли вы использовать Инструментарий, который зависит от того, насколько вы любите борьбу с элементами управления ASP.NET. Если вы используете скудное и среднее кодирование, такое как ASP> NET MVC, я бы бросил его, как горячий картофель. Если вы в традиционном проекте WebForms, набор инструментов, вероятно, так же хорош, как и он.