8
votes

Comment puis-je mettre à niveau plusieurs projets (même solution) ciblant 3,5 à 4.0 en une fois?

Dans une grande solution, nous avons environ 100 ~ projets tous les ciblés 3.5 et actuellement dans vs.net 2010.

Nous voulons maintenant la mettre à niveau vers .NET 4.0, dois-je aller un à un et changer leur cible? ou existe-t-il un moyen d'automatiser ce processus?


5 Réponses :


6
votes

Lors de la mise à niveau de nombreux projets et une opération similaire, j'utilise habituellement Rechercher et remplacer dans les fichiers.

Premièrement, j'ai mis à niveau un projet et diffère le résultat, puis je recherche et remplace les pièces pertinentes dans mes fichiers .CSPROJ.


0 commentaires

2
votes

Oui. Vous devrez les modifier chacun pour utiliser .NET 4.0.

ou vous pouvez créer un script qui modifiait tout le texte du projet et modifier le cadre pris en charge. Mais, cela prendrait plus de temps que de simplement aller à tous et les changerait.

Notez simplement que vous n'avez pas à faire cela. Il y a une compatibilité à l'envers. Les projets compilés pour travailler avec .NET 3.5 fonctionnera avec .NET 4.0

La seule chose que vous devez vraiment faire est de modifier le projet de configuration pour inclure .NET 4.0 en tant que condition préalable.

Autre que cela, vous n'avez pas besoin de changer le cadre tant que vous souhaitez réellement utiliser quelque chose dans le nouveau cadre.


3 commentaires

C'est l'idée que nous souhaitons utiliser 4.0 caractéristiques, mais je ne veux pas modifier manuellement 100 projets, ce qui prendrait environ 300 clics :)


Donc, dans chaque projet, lorsque vous commencez à utiliser les fonctionnalités 4.0, faites 1 de plus clic et changez-le à 4.0 ... Mise à jour paresseuse :)


Mise à jour paresseuse, pas une mauvaise idée :)



0
votes

J'avais fait quelque chose de similaire lorsque nous sommes passés de 2,0 à 3,5 + vs2008. J'ai utilisé Awk (en fait Gawk). J'ai pu faire la migration sans avoir à geler d'autres décrocheurs de développeurs pendant que je convertitais.

Awk m'a permis de spécifier une série de modèles de regex à rechercher dans chaque fichier et à exécuter une "action". Les fonctions prises en charge hors de la boîte étaient à égalité avec ce que je suis habitué à VBScript.

J'ai GAWK d'ici - http://unxutils.sourceforge.net/

J'ai trouvé cet article utile d'apprendre - http: // www.cs.utah.edu/dept/old/texinfo/gawk/gawk_toc.html


0 commentaires

1
votes

Je ne suis pas sûr de passer de 3,5 à 4.0, mais dans le cas de la mise à niveau de 2,0 à 4.0, vous verrez que VS2010 a réellement ajouté un fichier App.Config par défaut (au cas où vous n'aviez pas de propre), ce qui signifie que vous devrez également copier ce fichier à chacun des projets. En outre, au cas où vous aurez des * fichiers * .designer, ceux-ci peuvent également changer, vous devrez donc mettre à jour en conséquence ...

résumer, voici la procédure suivante:

  1. Mettez à niveau un projet et difforme les modifications apportées à tous les fichiers (je constate que l'utilisation du contrôle de la source est mieux appliquée pour cela)
  2. Écrivez un script / outil qui énumère sur toute la solution et ... une. Copies app.config à chacun des dossiers de projet b. Modifie les fichiers *. * Proj pour correspondre au diff pour p.1 c. Modifie le reste des fichiers si nécessaire

0 commentaires

11
votes

Le Cible Framework Migrateur Extension fonctionne bien.

Après que vous l'installa simplement, allez simplement à Outils -> Cadrage ciblée Migrateur


0 commentaires