9
votes

.NET SustentatRuntime in app.config

Je compile une application C # ciblant .NET 3.5 comme exécution

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

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?

acclamations Scott


0 commentaires

3 Réponses :


10
votes

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>


0 commentaires

3
votes

Le programme devrait collecter avec une erreur d'exécution .NET.


0 commentaires

6
votes

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.

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.


0 commentaires