Je compile une application C # ciblant .NET 3.5 comme exécution p>
Dans l'app.config, je spécifie la balise de version prise en charge recommandée pour 3.5 selon http://msdn.microsoft.com/en-us/library/w4atty68.aspx p>
Que se passera-t-il si un ordinateur ne dispose pas de version .NET 3.5 donné je spécifie .NET 2.0 en tant que prenant en chargeRuntime? P>
acclamations Scott p>
3 Réponses :
version 3.5 est essentiellement la version 2.0 du CLR. Indépendamment de ce que vous définissez, si vous avez utilisé l'une des fonctionnalités de .NET 3.5 ou 3.0 sur une machine qui n'a que la version 2.0, vous obtiendrez une erreur.
La valeur de la version sera la même pour 2.0, 3.0 , 3.5 et 3.5 SP1: P>
<configuration> <startup> <supportedRuntime version="v2.0.50727"/> </startup> </configuration>
Le programme devrait collecter avec une erreur d'exécution .NET. P>
La version durairruntime répertorie la version CLR, pas la version-cadre. Vous utilisez V2.0.50727 pour toute version de Framework .NET entre 2,0 et 3,5 SP1. P>
Votre application bombardera avec une exception FilenotFound lorsque vous utilisez un assemblage uniquement disponible en 3.0 ou 3.5 et vous essayez de l'exécuter sur 2,0. Y compris le 3.5 bootstrapper dans un projet de configuration (ajouté par défaut) est un moyen simple d'éviter cet accident. P>