Ajax ASP.NET по сравнению с jQuery в ASP.NET MVC

Вы также можете использовать это для соответствующего выхода

func searchCountry(for string: String?) {
        if let searchText = string {
            let filter = countries.filter({ [110].lowercased().hasPrefix(searchText.lowercased()) })
            print(filter)
        }
    }
33
задан womp 3 July 2009 в 03:40
поделиться

10 ответов

Лично я предпочитаю jQuery для следующие причины: -

  1. Сообщество плагинов гораздо более разнообразно и привлекает разработчиков из самых разных областей (не только из стека MS). Для MS-AJAX вы в значительной степени ограничены клиентским инструментарием управления AJAX для ваших виджетов UI.
  2. Я считаю, что jQuery API гораздо более применим к распространенным задачам на стороне клиента, чем те, которые предлагаются MS AJAX
  3. Учитывая отсутствие из-за дыма WebForms и зеркал, происходящих в MVC, иногда требуется жесткий контроль над DOM, чтобы делать определенные вещи, движок селектора CSS, предлагаемый jQuery, действительно помогает вам в этом.
33
ответ дан 27 November 2019 в 18:00
поделиться

Лично, несмотря на поддержку HtmlHelper для ASP.NET Ajax, я считаю, что jQuery ajax в сочетании с плагином форм JQuery является самым хорошим способом сделать сообщения формы ajax в ASP.NET MVC.

Например, с помощью вызова jquery на странице списка html-продуктов с формой для каждого продукта, позволяющей добавлять товар в корзину, одна строка кода jquery может «отрегулировать» все формы в страница

$(".productListItem form").ajaxForm({ target: '#extraInfoSection' });

в сочетании с простым свойством IsAjaxRequest в базовом классе контроллера, который проверяет заголовки:

Request.Headers["X-Requested-With"] == "XMLHttpRequest"

и некоторой логикой в ​​контроллере, чтобы вернуть правильный тип ответа:

return IsAjaxRequest ? (ActionResult) View("BasketPartial", basket) : new RedirectBackToReferrerActionResult();

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

18
ответ дан 27 November 2019 в 18:00
поделиться

Instead of making a recommendation I suggest you read Dave Ward's blog Encosia that has a series of posts on MS Ajax/ Update Panel vs. jQuery post mechanism. Dave maintains that the performance of jQuery is vastly superior as it cuts out approximately 100K from the transmission to and from the server.

9
ответ дан 27 November 2019 в 18:00
поделиться

JQuery - это чисто клиентская библиотека. Asp.Net Ajax включает в себя функциональные возможности как на стороне клиента, так и на стороне сервера. ИМХО, сравнение не совсем честно. Они могут дополнять друг друга в соответствии с планами Microsoft.

5
ответ дан 27 November 2019 в 18:00
поделиться

Существует вариант ASP.NET AJAX для MVC - используемый с AjaxHelper и расширениями. Это хорошо работает в сотрудничестве с JQuery. У меня есть случаи, когда я использую оба на одной странице; используя MVC AJAX для обновления DIV на основе нажатия кнопки и используя jQuery для получения данных JSON для другой операции на той же странице. Стандартный ASP.NET AJAX (UpdatePanels и т. Д.) Должен использоваться в мире WebForms, а не в MVC.

2
ответ дан 27 November 2019 в 18:00
поделиться

Я хотел бы упомянуть, что Microsoft поддерживает JQuery, и они будут поддерживать его в следующих версиях Visual Studio. Для получения дополнительной информации, пожалуйста, посетите http://live.visitmix.com/ . ASP.NET AJAX и jQuery не сильно перекрываются, поэтому вы хотели бы использовать оба.

1
ответ дан 27 November 2019 в 18:00
поделиться

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

  1. asp.net ajax основан на механизме обратной передачи на стороне сервера, его задача - упростить интеграцию функций ajax в режиме на стороне сервера
  2. jQuery , так как другие фреймворки (например, Extjs) реализуют чистый клиентский ajax

Все еще возможно использовать серверные элементы управления asp.net в asp.net mvc, asp.net ajax это один из них, но asp.net mvc это сделано считалось, чтобы разделить проблемы (взгляды) и быть REST стиль как можно ближе,поэтому, принимая это во внимание, мы подумали:

  1. Использование ASP.NET Web Forms ASP.NET AJAX - правильный выбор.
  2. Используя ASP.NET MVC, лучше попробовать перейти на клиент, поэтому jQuery (или другие) тем лучше

Извините за мой английский

1
ответ дан 27 November 2019 в 18:00
поделиться

Использование ASP.NET AJAX с веб-формами и jQuery с ASP.NET MVC

1
ответ дан 27 November 2019 в 18:00
поделиться

Другая альтернатива, на которую вы, вероятно, могли бы обратить внимание, - это Ajax.NET, http://www.ajaxpro.info/ . Я считаю, что это лучше, чем ASP.NET AJAX для веб-форм. Он также работает под MVC.

1
ответ дан 27 November 2019 в 18:00
поделиться

Прежде всего, вы можете использовать любой из них, если вы говорите о Microsoft Ajax, вы имеете в виду только клиентскую библиотеку. Вы можете использовать клиентскую библиотеку MS Ajax и большинство расширений набора инструментов без каких-либо серверных элементов управления. Я создал довольно большое приложение, используя веб-формы, и Microsoft Ajax затем преобразовал его в MVC / jquery. Я обнаружил, что использую все меньше и меньше функций в библиотеке MS Ajax. Имеется так много доступных плагинов, что это делает даже набор инструментов ajax устаревшим.

Если вы говорите о MS Ajax с использованием панелей обновления и т. Д., То я бы сказал, нет, вы не можете использовать их в MVC. На самом деле, не используйте их вообще! Обновление панелей имитируется AJAX, страница все еще проходит через свой жизненный цикл, почти побеждая цель использования AJAX.

1
ответ дан 27 November 2019 в 18:00
поделиться
Другие вопросы по тегам:

Похожие вопросы: