N' .net 4.5 travailler côte à côte avec .net 4.0?
Je suis intéressé par l'installation de l' .NET 4.5.
Mais j'ai entendu dire que c'est une mise À niveau sur Place.
Puisque les utilisateurs à mon entreprise utilise Windows XP. Je ne peut pas libérer de tout côté client les applications qui utilisent .NET 4.5.
Je sais que je peux cible .net 4.0, quand je code, mais, si j'installe .net 4.5, est-il des risques de choses à travailler sur ma machine qui ne fonctionne pas sur une machine Windows XP (qui n'a que des .net 4.0)?
(En passant, j'ai regardé mais n'a pas vu cette question. Si il a été demandé, merci de m'indiquer ce que je vais tenter de supprimer celle-ci.)
- 4.5 me confond plus que les autres, avec WindRT dans le mélange.
- Ne pas installer une version bêta sur une machine de production. Je n'ai jamais pas eu un énorme problème. Utiliser une machine virtuelle si vous voulez jouer avec elle.
Vous devez vous connecter pour publier un commentaire.
Oui, il y a des risques de sorte que vous décrivez. L' .NET 4.0 interface est inchangé, donc si vous ciblez .NET 4.0, votre programme de compiler et d'exécuter sur XP avec .NET 4.0, mais le .NET 4.5 mise en œuvre de l' .NET 4.0 contient des corrections de bugs ainsi. Si vous comptez sur .NET Framework ne pas être en buggy, et la seule disponible .NET Framework pour XP est buggy, votre programme va faire l'expérience de ces bugs. J'ai eu cela se produise avec Entity Framework, mais il pourrait y avoir d'autres corrections de bugs ainsi.
J'ai posé cette question sur le WPF Forum et a donné basiclly la même réponse que @hvd a donné.
http://social.msdn.microsoft.com/Forums/en/wpf/thread/c05a8c02-de67-47a9-b4ed-fd8b622a7e4a
Accepté la réponse est très pertinente, mais permettez-moi d'ajouter un exemple d'une situation où l'4.0 cible compilé sur un 4,5+ machine est moins utile qu'un 4.0 avec correction de bugs.
Si vous avez des
ComReference
dans vos projets, ils pourront invoquertlbimp.exe
de .NET 4.5 sur la machine de compilation. Cela peut entraîner votre logiciel contenant des wrappers qui font référence, par exemple, unSystem.Reflection.MethodInfo.CreateDelegate(System.Type)
méthode qui n'existe que dans .NET 4.5. Vous recevrez unMissingMethodException
sur la machine WinXP.Ce qui m'est arrivé lors d'un travail avec la
ComAdmin
espace de noms, qui sont des objets COM pour l'accès au catalogue COM+, mais je pense que le problème peut être plus large.