2010-05-20 3 views
2

De nombreux fichiers js sont inclus dans le dossier Scripts par défaut dans les projets ASP.NET MVC 2. Je suppose que les développeurs utilisent la librairie jquery presque chaque fois qu'ils programment un site, mais qu'en est-il des autres fichiers?Fichiers de script par défaut du projet ASP.NET MVC 2. Qu'est ce que tu utilises?

S'il vous plaît, pouvez-vous dire des scénarios et des raisons lorsque vous:

  • Utilisation Microsoft.Ajax au lieu de jquery ou mélanger les deux bibliothèques
  • Utiliser l'infrastructure de validation JQuery au lieu de asp.net mvc un ou les combiner à la fois

Merci d'avance!

P.S. il existe également des éditions différentes du même fichier. Incluez-vous différentes éditions dépenending sur la version debug/release?

Répondre

0

Personnellement, je ne mélangerais jamais deux bibliothèques JavaScript (MicrosoftAjax et jQuery) dans le même projet. Mis à part le téléchargement ajouté (vos utilisateurs devraient télécharger deux fois plus de fichiers JavaScript), il y a beaucoup de duplication - deux implémentations ajax, deux implémentations de validation, etc. Comme nous le savons tous, DRY est une bonne chose à suivre. Pour moi, le seul avantage d'utiliser MicrosoftAjax dans un projet ASP.NET MVC est qu'il a un support côté serveur intégré - Ajax.Form, Ajax.ActionLink etc. La validation client intégrée l'utilise également.

Cependant, toutes ces choses peuvent être faites avec jQuery et d'après mon expérience, je pense que jquery.validate fonctionne aussi bien avec les annotations de données. Je n'ai trouvé aucun problème jusqu'à présent.

+0

Merci. Mais JQuery ne connaît rien à propos de DataAnnotations côté serveur (AFAIK). Comment gardez-vous le code de validation DRY? Comptez uniquement sur les validateurs mvc asp.net (scripts côté client + annotations de données), utilisez des librairies middleware comme xVal ou autre chose? –

+0

Il y a un mvc JavaScript qui fait le pont avec jquery.validate. Vérifiez la version à terme MVC sur codeplex. –

0

Je supprime généralement ce dossier et en crée un nouveau sous "Contenu" avec juste jquery pour commencer. Je me sens plus à l'aise de travailler avec jquery au lieu de l'implémentation ajax de microsoft, donc je n'ai pas besoin du fichier script lié à Microsoft.Ajax.

Et à propos de la validation, j'aime utiliser jquery.validate pour la validation côté client et la validation du modèle de notifications de données pour le côté serveur. Dans MVC1, vous pouvez faire le pont en utilisant un framework comme xVal, mais vous ne l'avez pas encore fait en mvc2.

+0

Je fais la même chose. Ne voyez aucune raison de préférer Microsoft Ajax à JQuery. Mais hésiter sur la validation côté client. Je me sens nerveux quand je combine jquery avec des annotations de données côté serveur. –

1

Je ne trouve aucune raison de préférer la bibliothèque Microsoft AJAX à la place de jQuery. Idem pour la validation. Aussi, je vous recommande d'utiliser un CDN network pour servir des fichiers statiques tels que jquery et jquery.validation. Commencez par supprimer tout ce qui se trouve dans le dossier Script et ajoutez uniquement les scripts que vous écrivez vous-même.

+0

Merci. AFAIK, JQuery ne sait rien sur DataAnnotations côté serveur. Comment conserver mon code de validation (client + serveur) DRY? Dois-je me fier uniquement aux validateurs mvc asp.net (scripts côté client + annotations de données), utiliser des librairies middleware comme xVal ou autre? –

Questions connexes