2010-07-28 10 views
5

Durante gli ultimi 2 anni JQuery è diventato sempre più popolare. Quindi pensi che sia giunto il momento di preferire JQuery ad ASP.NET Ajax nei progetti ASP.NET con Ajax? ASP.NET Ajax Control Kit è un futuro nel mondo ASP.NET?Kit controllo Ajax di ASP.NET rispetto a JQuery

risposta

3

Risposta breve:

Se la pagina/sito non è attualmente in base ai controlli UpdatePanel o ACT, sicuramente utilizzare jQuery e jQuery UI per ogni nuovo lavoro. Questa è persino la raccomandazione di Microsoft ora.

Risposta lunga:

E 'importante essere chiari sulla terminologia quando si tratta di questo argomento.

ASP.NET AJAX è parte client-side, ma anche parte server-side. System.Web.Extensions proveniva da Atlas ed è stato infine integrato in ASP.NET 3.5. Anche se non si utilizza ScriptManager o MicrosoftAjax.js, le porzioni lato server di ASP.NET AJAX sono ancora molto utili per creare endpoint lato server basati su JSON (e quelli may be called directly from jQuery, senza ScriptManager).

jQuery e MicrosoftAjax.js sono in qualche modo simili, ma entrambi fanno cose che l'altro non fa. Non è strettamente preciso dire che sono in competizione tra loro; hanno obiettivi diversi. Se la tua applicazione ha UpdatePanel, non hai altra scelta che includere MicrosoftAjax.js (che entra automaticamente in ScriptManager). jQuery e MicrosoftAjax.js funzionano bene insieme, quindi puoi ancora use jQuery's more powerful selectors, traversals, and animations in conjunction with UpdatePanels se devi.

AJAX Control Toolkit (ACT) è un progetto diverso, completamente separato da ASP.NET AJAX. Si confronta più direttamente con l'interfaccia utente di jQuery, non con il core jQuery stesso. Andando avanti, penso che vedremo la maggior parte dei controlli AJAX Control Toolkit lato client solo come refactored come plugin jQuery (che è già successo alla fine dell'anno scorso, ma sono stati estratti).

In definitiva, è preferibile utilizzare l'interfaccia utente jQuery o jQuery su MicrosoftAjax.js o ACT se esiste una soluzione equivalente in entrambi. Tuttavia, se sei legato a MicrosoftAjax.js con UpdatePanels o altro codice esistente, non aver paura di mischiare jQuery con quello e passare lentamente a jQuery. Lavorano alla grande insieme.

1

A mio parere, jQuery è un salto da gigante migliore del Ajax Control Toolkit. La ragione principale per me è il grande supporto che la comunità ha dato. Non solo la documentazione di jQuery sul Web è migliore, ma poiché jQuery non è un framework incentrato su .NET, la community è più grande, il che significa che chiunque, da uno sviluppatore di Ruby on Rails a uno sviluppatore PHP, può aiutarti con il tuo codice altrettanto bene come sviluppatore .NET, che sarebbe ovviamente più difficile da trovare.

Oltre a questo, ho ottenuto prestazioni migliori rispetto al Toolkit e trovo molto più semplice scrivere contro e personalizzare. E devi amare jQuery UI.

A proposito, tieni presente che semplicemente abilitando ScriptManager sulla tua pagina ASPX, stai caricando una serie di script che aggiungono ulteriore carico alla tua pagina. Qualcosa da tenere a mente prima di mischiare jQuery e il Toolkit.

+1

Per essere onesti, aggiungere solo uno ScriptManager a una pagina aggiunge solo uno script alla pagina (che ha all'incirca le stesse dimensioni del nucleo stesso di jQuery). –

+0

Quello che voglio dire è che l'aggiunta degli script jQuery e del gestore di script è piuttosto massiccia. Se ne stai usando solo uno, immagino sia bello. – rebelliard

1

Penso che ASP.NET Ajax Toolkit utilizzi jQuery sotto il cofano. (questo è sbagliato).

È possibile utilizzare entrambi. Immagino dipenda da cosa preferisci, perché Ajax Toolkit fornisce controlli che puoi usare lato server, mentre jQuery sarà sempre lato client.

Quindi probabilmente utilizzerai entrambi: quando esiste un controllo in Ajax Toolkit e hai bisogno di alcune proprietà/accessori lato server, ecc. Usalo, se hai bisogno di alcune funzionalità che non sono fornite dal Toolkit, usa puro jQuery .

Microsoft sta lavorando con la comunità jQuery e invia loro alcune patch. Quindi suppongo che continueranno a mantenere il Toolkit. Ajax Toolkit è solo uno strato rispetto alle pure funzioni jQuery e fornisce controlli sul lato server.

Aggiornamento:
citazioni interessanti dal this blog:

Tuttavia, con Visual Studio 2008 Service Pack 1 , abbiamo anche aggiunto il supporto per la sempre crescente popolare libreria jQuery . Cioè, è possibile utilizzare jQuery con ASP.NET e potrebbe anche ottenere IntelliSense per jQuery in Visual Studio 2008.

E:

Per la programmazione lato client utilizzando JavaScript per l'attuazione AJAX in ASP.NET, il consiglio è di utilizzare jQuery che verrà spedito insieme a con Visual Studio e fornisce anche intellegenza .

Per la programmazione lato server uno può utilizzare i controlli del server come UpdatePanel ecc.e anche il toolkit di controllo AJAX che si avvicina ai 40 controlli.

+0

Non penso che sia ancora jQuery sotto il cofano, ma sospetto che la prossima versione sarà ... – PhilPursglove

+0

Non è jQuery sotto il cofano. Infatti, "Atlas" è stato progettato direttamente come un concorrente, ma per una volta, MS ha accettato la forza di jQuery e ha deciso di lavorare con esso piuttosto che contro di esso. Non ho letto nulla sulla prossima versione costruita su jQuery, ma potrebbe essere utile se lo fosse. – CJM

+0

Hai ragione, non è basato su jQuery. Ho corretto. Mi sono sbagliato dal fatto che Visual Studio supporta jQuery includendo la libreria e fornendo supporto Intellisense. –

2

jQuery è il più popolare, principalmente perché è indipendente dalla piattaforma, ma è un buon sistema a sé stante.

Non penso che ci sia qualcosa di sbagliato in ASP.NET AJAX per chi si sta sviluppando su piattaforme Microsoft.

Ho usato entrambi, ma ora mi sbaglio su jQuery, principalmente a causa delle risorse e degli esempi disponibili.

Ciò significa che l'offerta di MS è condannata? Non ancora. Esisterà fino a quando un certo numero di persone lo sta usando, ma penso che giocherà sempre da fiddle a jQuery.

Se sei uno sviluppatore solo ASP.NET, dai un'occhiata a entrambi e utilizza quello che preferisci. Se sviluppi su piattaforme diverse, la soluzione su jQuery potrebbe essere più consigliabile.

PS. ci sono anche altri framework AJAX multipiattaforma ...

1

ASP.NET Ajax e il toolkit Ajax di ASP.NET sono due cose separate. Il toolkit è un set di controlli ASP.NET (e alcune altre cose). È il codice lato server e alcuni javascript. ASP.NET Ajax è un framework di applicazione che è possibile utilizzare per creare e gestire i controlli lato client; è Javascript. Il toolkit ASP.NET Ajax si basa su questo framework.

jQuery e ASP.NET Ajax presentano alcune sovrapposizioni di funzionalità ma non si escludono a vicenda. jQuery è principalmente orientato all'aggiornamento e alla manipolazione del markup. ASP.NET Ajax è orientato a fornire un framework applicativo.

Microsoft ha recentemente deciso di non competere con jQuery ma di investire in esso perché jQuery e ASP.NET Ajax funzionano bene insieme e si completano a vicenda. JQuery è in realtà shipped with Visual Studio.

Quindi, per rispondere alla prima domanda, è necessario utilizzare la lib JavaScript più adatta per il lavoro, sia jQuery o ASP.NET Ajax.

Se si desidera utilizzare il Toolkit, dipende da quanto ti piace lottare con i controlli ASP.NET. Se ti piacciono i codici snelli e medi come ASP> NET MVC, lo farei cadere come una patata bollente. Se sei in un tradizionale progetto WebForms, probabilmente il toolkit è buono come quello che otterrà.

Problemi correlati