manière la plus facile de convertir .Un projet de réseau de 4.5 4.0?
J'ai un .NET application que j'ai construit dans de 4,5, ce qui a des références à tout un tas de bibliothèques qui ont été construits en 4.5, qui ont eux-mêmes des références à 4,5, etc. Un groupe d'utilisateur que je suis en train de distribuer l'application à des problèmes à l'exécution de l'exécutable parce qu'ils ont 4.0 est installé; en particulier, ils obtiennent un MissingMethodException:
Method not found: 'System.Type System.Runtime.InteropServices.Marshal.GetTypeFromCLSID(System.Guid)'.
Parce que nous pouvons avoir de la difficulté à obtenir de chaque utilisateur mis à jour à 4,5 (car aucun d'entre eux ont des autorisations d'administrateur sur leurs machines, et cela nécessiterait une distinct demande de mise à niveau pour chaque utilisateur), je suis à la recherche à trouver un moyen facile de reconstruire le projet 4.0. Cela semble exiger que je reconstruction de chaque bibliothèque et de ses bibliothèques référencées dans la version 4.0; est-il un moyen plus facile de le faire que de passer par chaque bibliothèque, un par un, et la construction d'une version 4.0? Je pense peut-être comme un one-cliquez sur l'option pour "Reconstruire toutes les bibliothèques référencées dans la cible cadre" ou quelque chose comme ça.
- Non, vous aurez à changer le Cadre de la cible sur chaque projet individuel. Je suppose que vous pourriez écrire un petit programme qui utilise XDocument pour modifier les fichiers de projet, je doute qu'il est plus rapide. Assurez-vous que votre client est conscient de la version que vous avez testé et peut prendre en charge. Qui a peu à voir avec la version que vous pouvez construire.
Vous devez vous connecter pour publier un commentaire.
Si vous avez des dépendances sur .Net 4.5 Dll, alors vous aurez besoin pour obtenir .Net 4.0 versions de ces si vous voulez réussir downgrade de votre projet. Un .Un projet de réseau peut seule référence .Net Dll jusqu'à la même version de .Net, le référencement de l'assemblée.
La façon la plus simple de le faire est d'utiliser quelque chose comme NuGet pour la gestion de vos dépendances. Notez que lorsque vous modifiez la cible cadre de la version de votre projet de VS, vous devrez désinstaller et ré-installer les dépendances avec NuGet que NuGet ne pas faire automatiquement pour vous lorsque vous modifiez la cible framework version.
Bien sûr, si toutes les dépendances sont à votre propre code et vous n'êtes pas la publication de ce par le biais d'un système de gestion de la dépendance comme NuGet, vous aurez besoin de rétrograder tous vos autres code .Net 4.0 ainsi
Lorsque j'utilise Visual Studio, je clic droit sur le projet, modifier le cadre, fixer les Références et les recompiler. Habituellement droit de l'avant.
The primary reference "NameOfReferencedDLL, Version=1.0.0.0, Culture=neutral, processorArchitecture=MSIL" could not be resolved because it was built against the ".NETFramework,Version=v4.5" framework. This is a higher version than the currently targeted framework ".NETFramework,Version=v4.0".
et de toutes les classes à partir de la référence ne sont pas disponibles.S'il vous plaît, jetez un oeil à cette page MSDN correctement l'interrupteur de votre projet pour une cible inférieure du cadre sans problèmes! Il est un peu vieux pour ce qui concerne les versions, mais le processus est le même que décrit!
C'est basé sur mon expérience. J'ai eu une demande initialement créé en .net framework 4.5, mais j'ai voulu le convertir en .net framework 4.0. J'ai créé un nouveau projet initialement créé 4.0 et puis, j'ai fait le copier-coller de tous les formulaires et les contrôles de ma demande précédente, et cela fonctionne. Framework 4.5 est à l'aide de Aero2 et 4.0 est Aero... Bonne Chance 🙂