2010-07-28 12 views
5

Durante los últimos 2 años JQuery se ha vuelto más y más popular. Entonces, ¿crees que es hora de preferir JQuery a ASP.NET Ajax en proyectos ASP.NET con Ajax? ¿El ASP.NET Ajax Control Kit es un futuro en el mundo de ASP.NET?ASP.NET Ajax Control Kit versus JQuery

Respuesta

3

Respuesta corta:

Si su página/sitio no está en función de los controles UpdatePanel o ACT, definitivamente el uso de jQuery y jQuery UI para cualquier nueva obra. Esa es incluso la propia recomendación de Microsoft ahora.

Respuesta larga:

Es importante ser claro acerca de la terminología cuando se trata de este tema.

ASP.NET AJAX es parte del cliente, pero también parte del servidor. System.Web.Extensions provino de Atlas y finalmente se integró en ASP.NET 3.5. Incluso si no utiliza un ScriptManager o MicrosoftAjax.js, las porciones del lado del servidor de ASP.NET AJAX siguen siendo muy útiles para crear puntos finales del lado del servidor basados ​​en JSON (y esos may be called directly from jQuery, sin ScriptManager).

jQuery y MicrosoftAjax.js son algo similares, pero ambos hacen cosas que el otro no hace. No es estrictamente exacto decir que compiten entre sí; ellos tienen diferentes objetivos Si su aplicación tiene UpdatePanels, no tiene más remedio que incluir MicrosoftAjax.js (que viene automáticamente con el ScriptManager). Sin embargo, jQuery y MicrosoftAjax.js sí funcionan bien juntos, por lo que todavía puede use jQuery's more powerful selectors, traversals, and animations in conjunction with UpdatePanels si es necesario.

El kit de herramientas de control AJAX (ACT) es un proyecto diferente, completamente separado de ASP.NET AJAX. Se compara más directamente con la interfaz de usuario de jQuery, no con el núcleo de jQuery. En el futuro, creo que veremos la mayoría de los controles de AJAX Control Toolkit solo para el cliente refactorizados como complementos jQuery (que ya ocurrieron a fines del año pasado, pero fueron retirados).

En última instancia, es mejor favorecer jQuery o jQuery UI sobre MicrosoftAjax.js o el ACT si existe una solución equivalente en ambos. Sin embargo, si está vinculado a MicrosoftAjax.js con UpdatePanels u otro código existente, no tenga miedo de mezclar jQuery con eso y la transición a jQuery lentamente. Ellos trabajan muy bien juntos.

1

En mi opinión, jQuery es mucho mejor que Ajax Control Toolkit. La razón principal para mí es la gran copia de seguridad que la comunidad le ha dado. No solo mejora la documentación de jQuery en la web, sino que jQuery no es un framework centrado en .NET, la comunidad es más grande, lo que significa que cualquier persona, desde un desarrollador de Ruby on Rails hasta un desarrollador de PHP, puede ayudarte con tu código. como desarrollador .NET, que obviamente sería más difícil de encontrar.

Aparte de eso, he tenido un mejor rendimiento que el Toolkit, y me resulta mucho más fácil escribir contra y personalizar. Y tienes que amar jQuery UI.

Por cierto, tenga en cuenta que simplemente habilitando el ScriptManager en su página ASPX, cargue un conjunto de scripts que agreguen carga adicional a su página. Algo para tener en cuenta antes de mezclar jQuery y el Toolkit.

+1

Para ser justos, agregar solo un ScriptManager a una página solo agrega una secuencia de comandos a la página (que es aproximadamente del mismo tamaño que jQuery core en sí). –

+0

Lo que quiero decir es que agregar los guiones jQuery y el gestor de guiones es bastante masivo. Si estás usando solo uno, supongo que es genial. – rebelliard

1

Creo que ASP.NET Ajax Toolkit está usando jQuery debajo del capó. (esto es incorrecto).

Puede usar ambos. Supongo que depende de lo que prefiera, ya que Ajax Toolkit proporciona controles que puede usar en el lado del servidor, mientras que jQuery siempre estarán en el lado del cliente.

Así que probablemente use ambos: cuando existe un control en Ajax Toolkit y necesita algunas propiedades/accesos del lado del servidor, etc. úselo, si necesita algunas funcionalidades que no están provistas por el Toolkit, use jQuery puro .

Microsoft está trabajando con la comunidad jQuery y les envía algunos parches. Así que supongo que continuarán manteniendo el Toolkit. Ajax Toolkit siendo solo una capa sobre las funciones jQuery puras y proporcionando controles del lado del servidor.

Actualización:
citas interesantes de this blog:

Sin embargo, con Visual Studio 2008 Service Pack 1 , también hemos añadido soporte para el cada vez mayor populares librería jQuery . Es decir, se puede usar jQuery junto con ASP.NET y desea también obtener IntelliSense para jQuery en Visual Studio 2008.

Y:

Para la programación del lado del cliente usando JavaScript para implementar AJAX en ASP.NET, la recomendación es utilizar jQuery que se enviará junto con con Visual Studio y proporciona intellisense también.

Para la programación del lado del servidor, uno puede usar los controles del servidor como UpdatePanel, etc., y también el AJAX Control Toolkit que tiene cerca de 40 controles ahora.

+0

No creo que todavía esté bajo jQuery, pero sospecho que la próxima versión será ... – PhilPursglove

+0

No es jQuery bajo el capó. De hecho, 'Atlas' se diseñó directamente como un competidor, pero por una vez, MS ha aceptado la fuerza de jQuery y ha decidido trabajar con ella en lugar de contra ella. No he leído nada sobre la próxima versión que se está construyendo en jQuery, pero podría ser útil si fuera así. – CJM

+0

Tienes razón, no está basado en jQuery. Yo corregí. Me confundí con el hecho de que Visual Studio admite jQuery al incluir la biblioteca y al proporcionar soporte de Intellisense. –

2

jQuery es el más popular, principalmente porque es independiente de la plataforma, pero es un buen sistema por sí mismo.

No creo que haya nada de malo en ASP.NET AJAX para aquellos que se desarrollan en plataformas de Microsoft.

He usado ambos, pero me estoy equivocando con jQuery ahora, principalmente por los recursos y las muestras disponibles.

¿Eso significa que la oferta de MS está condenada? Aún no. Existirá mientras lo use una cierta cantidad de personas, pero creo que siempre jugará un segundo papel en jQuery.

Si usted es un desarrollador solo de ASP.NET, eche un vistazo a ambos y utilice el que más le convenga. Si desarrolla en diferentes plataformas, entonces establecerse en jQuery podría ser más recomendable.

PS. hay otros frameworks AJAX multiplataforma por ahí también ...

1

ASP.NET Ajax y ASP.NET Ajax toolkit son dos cosas separadas. El kit de herramientas es un conjunto de controles ASP.NET (y algunas otras cosas). Es el código del lado del servidor y algo de javascript. ASP.NET Ajax es un marco de aplicación que puede usar para crear y administrar controles del lado del cliente; es Javascript El kit de herramientas ASP.NET Ajax se basa en este marco.

jQuery y ASP.NET Ajax tienen algunas superposiciones en la funcionalidad, pero de ninguna manera son mutuamente excluyentes. jQuery está principalmente orientado a actualizar y manipular el marcado. ASP.NET Ajax está orientado a proporcionar un marco de aplicación.

Microsoft ha decidido recientemente no competir con jQuery, pero invertir en él porque jQuery y ASP.NET Ajax funcionan bien juntos y se complementan entre sí. JQuery es en realidad shipped with Visual Studio.

Por lo tanto, para responder a su primera pregunta, debe usar la versión de JavaScript más adecuada para el trabajo, ya sea jQuery o ASP.NET Ajax.

Si desea utilizar el Toolkit, eso depende de cuánto le guste luchar con controles ASP.NET. Si le gustan los códigos de tipo pobre como ASP> NET MVC, lo dejaría caer como una patata caliente. Si está en un proyecto tradicional de WebForms, el conjunto de herramientas es probablemente tan bueno como lo que va a obtener.