35 votes

Est-ce que .net 4.5 fonctionne parallèlement à .net 4.0 ?

Je suis intéressé par l'installation de .NET 4.5.

Mais j'ai entendu dire qu'il s'agissait d'une mise à niveau en place.

Les utilisateurs de mon entreprise utilisent Windows XP. Je ne peux pas publier d'applications côté client qui utilisent .NET 4.5.

Je sais que je peux cibler .net 4.0 lorsque je code, mais si j'installe .net 4.5, y a-t-il un risque que des choses fonctionnent sur ma machine qui ne fonctionneront pas sur une machine Windows XP (qui n'a que .net 4.0) ?

(Par ailleurs, j'ai cherché mais je n'ai pas vu cette question posée. Si elle l'a été, merci de me l'indiquer et j'essaierai de supprimer celle-ci).

23voto

hvd Points 42125

Oui, il existe des risques du type de ceux que vous décrivez. L'interface .NET 4.0 est inchangée, donc si vous ciblez .NET 4.0, votre programme se compilera et fonctionnera sous XP avec .NET 4.0, mais l'implémentation .NET 4.5 de .NET 4.0 contient également des corrections de bogues. Si vous comptez sur le fait que .NET Framework ne soit pas bogué, et que le seul .NET Framework disponible pour XP est bogué, votre programme va subir ces bogues. Cela m'est arrivé avec Entity Framework, mais il pourrait y avoir d'autres corrections de bogues.

2voto

Vaccano Points 18515

J'ai posé cette question sur le WPF Forum et j'ai reçu la même réponse que @hvd.

http://social.msdn.microsoft.com/Forums/en/wpf/thread/c05a8c02-de67-47a9-b4ed-fd8b622a7e4a

1voto

Jirka Hanika Points 8266

La réponse acceptée est très pertinente, mais permettez-moi d'ajouter un exemple de situation où la cible 4.0 compilée sur une machine 4.5+ est moins utile qu'une 4.0 dont les bogues ont été corrigés.

Si vous avez des ComReference dans vos projets, ils invoqueront tlbimp.exe de .NET 4.5 sur la machine de construction. Il se peut donc que votre logiciel contienne des wrappers qui font référence, par exemple, à un fichier System.Reflection.MethodInfo.CreateDelegate(System.Type) qui n'existe que dans .NET 4.5. Vous obtiendrez un MissingMethodException sur la machine WinXP.

C'est ce qui m'est arrivé lorsque j'ai travaillé avec le ComAdmin qui sont des objets COM permettant d'accéder au catalogue COM+, mais je soupçonne que le problème est plus vaste.

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