41 votes

Peut-on mélanger les versions de .NET framework dans une solution ?

La base de code sur laquelle je travaille est .NET 2.0. Pour nos nouveaux assemblages/DLLs/applications Web, j'aimerais profiter de ce que la version 3.5 a à offrir.

Peut-on mélanger les frameworks .NET (par assemblage) dans une solution ? Y a-t-il des restrictions liées à IIS ?

Je serais ravi d'entendre tout commentaire positif/négatif/comment faire. Faites-moi signe !

Merci !

19voto

Faizan S. Points 5436

Oui, vous pouvez le faire dans Visual Studio et cela s'appelle Multi-ciblage .

Scott Guthrie a un article de blog très intéressant sur Prise en charge du multiciblage dans Visual Studio .

VS 2008 a été la première version de Visual Studio qui incluait un support multi-cibles pour .NET. Cela signifiait que vous pouviez utiliser VS 2008 pour créer et modifier non seulement projets .NET 3.5, mais aussi .NET 3.0 et .NET 2.0 également. Ce site permet aux développeurs de mettre plus rapidement de mettre à niveau et de tirer parti des nouvelles fonctionnalités d'outils de Visual Studio - sans avoir nécessairement besoin la nouvelle version de .NET soit installée installée sur les clients et les serveurs de production exécutant leurs applications.

Cheers

6voto

BG BG Points 41

Vous pouvez utiliser 2.0, 3.0 et 3.5 ensemble selon : http://msdn.microsoft.com/en-us/library/bb383796(v=vs.90).aspx

4voto

Kevin Points 57797

EDIT : J'avais tort, vous pouvez le faire. Vous pouvez aller référencer des assemblages 3.+ dans 2.0, car le CLR est le même. Ce ne sera pas le cas en passant de 2.0/3.+ à 4.0 car il y a une nouvelle version du CLR.

http://abdullin.com/how-to-use-net-35-syntax-and-compiler-features-for-net-20/

3voto

Ross Hambrick Points 1869

Si vous pouvez attendre le nouveau cadre .NET 4.0, vous serez en mesure d'exécuter les dll de chaque version côte à côte dans le même processus.

2voto

Hans Passant Points 475940

Cela ne devrait pas poser de problème. Les versions .NET 2.0 RTM à .NET 3.5 SP2 utilisent toutes exactement la même version du CLR. Ils ne diffèrent que par le nombre d'assemblages qui sont inclus. Le format des assemblages est le même. Bien entendu, si vous tirez parti d'un assemblage qui n'est inclus que dans .NET 3.5, vous devez vous assurer que la version 3.5 est effectivement installée sur la machine cible. Si ce n'est pas le cas, vous le découvrirez rapidement.

La version 3.5 devrait déjà être sur la machine si Windows Update est activé. Si ce n'est pas le cas, il faut une douzaine de minutes pour l'installer.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X