2009-05-28 7 views
4

Pardonnez-moi si c'est une question à répéter. J'ai cherché StackOverflow et n'ai pas trouvé la réponse à ma question, alors voilà.Raisons impérieuses de migrer d'ASP.NET 2.0 vers ASP.NET 3.5

Nous avons actuellement une application Web exécutant ASP.NET 2.0 avec AJAX Extensions 1.0 et SQL Server 2005 en cours d'exécution, déployée sur IIS 6 et développée dans VS2005. Tout fonctionne bien, mais j'essaie de trouver des raisons impérieuses de migrer. Les clients que nous servons ne permettent pas les plugins en général dans les navigateurs, donc Silverlight n'est pas une raison pour nous de migrer. En outre, nous ne prévoyons pas de migrer vers SQL Server 2008 prochainement et ASP.NET MVC ne fonctionne pas non plus.

Voici mes raisons de migrer. Je voudrais que les gens de les commenter ou ajouter à la liste:

  • Je veux travailler avec la nouvelle substance .NET (et je pense que d'autres développeurs seraient trop appel également aux employés potentiels.)
  • Vous voulez garder la technologie à jour.
  • Méthodes d'extension
  • de PageMethods dans WebControls
  • WCF
  • LINQ peut-être (nous utilisons actuellement AutoSproc pour notre DAL)
  • ASP.NET AJAX intégré pour ASP.NET 3.5 (pas vraiment une grosse affaire cependant)
  • VS.NET 2008 JavaScript IntelliSense
+0

Bonne question. Je viens de démarrer un nouveau service Web ASP.NET mais j'ai dû démarrer dans ASP.NET 2.0. Depuis lors, notre serveur a été mis à jour pour pouvoir utiliser ASP.NET 3.5, mais je ne sais pas si cela vaut la peine de le convertir en WCF ou non. –

+0

J'ai oublié de mentionner que nous allons très probablement passer à VS.NET 2008, car vous pouvez cibler le framework sur 2.0 comme le mentionne Bratch. – nickytonline

+0

@Jeff: Le problème WCF est totalement distinct du problème ASP.NET. La raison pour passer à WCF est qu'ASMX est vieux et a peu de futur. WCF est le présent et l'avenir du développement de services Web. C'est plus puissant, sans vous obliger à comprendre tout le pouvoir. –

Répondre

2

Le IntelliSense javascript est un énorme amélioration sur anythi C'est arrivé avant. Mais en même temps, il échoue encore de façon très spectaculaire. Dans l'ensemble, c'est une bonne étape, mais pas quelque chose que j'ai pu utiliser autant que je le voudrais. Les méthodes d'extension et linq (linq pour les objets et lambdas, pas seulement linq pour sql) sont très cool, mais comme vous avez déjà configuré un orm, vous ne les utiliserez pas autant que vous le souhaitez.

WCF va bien, mais vous n'allez probablement pas réécrire vos services existants pour cela.

Je pense que la plus grande raison derrière cela est de garder vos employés heureux et d'en attirer de nouveaux.

+0

Oui, c'est le point! - "Je pense que la plus grande raison est de garder vos employés heureux et d'en attirer de nouveaux." – User

+0

^Comment migrer de la version 2.0 vers la version 3.5, "gardez vos employés heureux"? C'est un risque énorme lors de la migration des applications de travail vers une nouvelle plate-forme Web MS. Jamais rien de tel n'a été "facile" ou "heureux". L'entreprise se soucie seulement de son activité en cours d'exécution. Les outils ne comptent pas dans le long terme. Navires plate-forme de saut est tout simplement trop risqué d'encourager, n'importe où. – D3vtr0n

+0

@Devtron - cela signifie le _programmer_ employés. Les programmeurs aiment généralement travailler avec de meilleurs outils et savoir que leurs compétences ne sont pas en retard sur leurs pairs. –

3

Mes pièces préférées sont:

  • Lambda expressions
  • Fonctions disponibles dans l'espace de noms System.Data.Linq : Où (...), OrderBy (...), foreach (...)
  • méthodes d'extension (ajouter un "ToDelimitedString (...)" à tous IEnumerable!)
  • Visual studio 2008 est plus agréable avec HTML/syntaxe web et le débogage, y compris le susmentionné Javascript intellisense et le débogage.

Chacun d'entre eux vous permet d'écrire du code de manière plus productive.
Il élimine en grande partie le passe-partout "foreach", "if x! = Null", et d'autres constructions ennuyeuses.

+0

VS 2008 est bien plus agréable avec l'éditeur HTML, rattrapant finalement les concurrents. Vous pouvez utiliser VS 2008 et toujours cibler le framework 2.0. – Bratch

+0

Oui, vous pouvez refactoriser votre code à l'enfer et à l'arrière, pour utiliser les fonctionnalités 3.5. Cela dépend de vous et de votre entreprise, je suppose. – D3vtr0n

2

Vous n'avez absolument aucune raison de mettre à niveau votre entreprise.

Vous avez absolument toutes les raisons de mettre à niveau, d'un développeur prospectif.

Il suffit de garder à l'esprit que SQL 2008 n'est pas rétrocompatible avec SQL 2005, ce qui signifie, si vous développez quelque chose dans SQL Server 2008, les chances sont, votre plate-forme 2005 sera barf à elle. Je viens de l'expérimenter avec des paquets SSIS.

+2

"Vous n'avez absolument aucune raison de mettre à niveau, d'une entreprise prospective" Pas tout à fait vrai. Si vous restez trop longtemps dans l'état de choses "ne pas mettre à niveau", cela finira par vous mordre la crosse et vous forcer à mettre à jour avec plus de douleur (ce qui vous coûtera plus cher) que si vous aviez continuellement mis à jour (même si vous avez sauté toutes les autres versions). Nous avons récemment expérimenté cela là où je travaille, et maintenant la politique est de toujours mettre à niveau. – RobH

+0

Visual Studio 2008 aide un développeur à être plus productif et efficace. Période. C'est tout ce dont vous avez besoin en tant qu'argument commercial. –

+0

^Cela ressemble à une opinion, au lieu de factuel. Comment mesurez-vous la productivité et l'efficacité comme ça? Pouvez-vous honnêtement dire cela, ne sachant pas quelles sont les exigences de la demande? Non, vous ne pouvez pas. Juste parce que 2008 a quelques outils de fantaisie, ne signifie pas que cela vous rend plus productif, cela dépend du développeur et de l'architecture en place. – D3vtr0n

0

Tous les points mentionnés sont valides.

Mais en tant que développeur, face à ce genre de question, je me demande toujours de l'autre côté.

Quelles sont les raisons impérieuses PAS pour migrer d'ASP.NET 2.0 vers ASP.NET 3.5? Je trouve plus facile de me motiver à améliorer.

2

LINQ est une raison de mettre à jour, même si vous n'échangez pas votre DAL, ou ne le faites pas pendant un certain temps. Dans le produit sur lequel j'ai travaillé récemment, notre calendrier de développement est tel qu'il n'y a pas de place pour changer notre DAL à un LINQ pour un moment encore, mais même si je trouve de bonnes raisons d'utiliser LINQ-to-Objects et/ou LINQ-to-XML dans probablement 60% des classes que je touche, et je l'aime.

0

Le libre Microsoft ASP.net Chart contrôle et la nouvelle version du kit d'outils Ajax exigent tous deux 3,5. Si je ne me trompe pas.

1

Tout fonctionne toujours sur .NET 2.0, il est juste des améliorations bibliothèque et linguistiques et une expérience améliorée IDE, qui sont faits pour augmenter la productivité. Productivité accrue = justification. J'utilise LINQ tout le temps maintenant, tous les jours. Ce n'est pas seulement pour votre DAL. Il s'agit d'interroger n'importe quoi, avec la même API. Plus généralement, les expressions Lamba vous permettent de faire des choses très compliquées et de prendre beaucoup plus de code sans elles. Les types anonymes sont également très utiles.