Question Quels sont les numéros de version corrects pour C #?


Quels sont les numéros de version corrects pour C #? Qu'est-ce qui est sorti quand? Pourquoi ne puis-je trouver aucune réponse à propos de C # 3.5?

Cette question vise principalement à aider ceux qui cherchent une réponse en utilisant un numéro de version incorrect, par ex. C # 3.5. L'espoir est que quiconque ne parvient pas à trouver une réponse avec le mauvais numéro de version trouvera ce question, puis recherchez à nouveau avec le bon numéro de version.


2061


origine


Réponses:


Historique des versions en C #:

Voici les versions de C # connu au moment de la rédaction de cet article:

En réponse à la question du PO:

Quels sont les numéros de version corrects pour C #? Qu'est-ce qui est sorti quand? Pourquoi ne puis-je trouver aucune réponse à propos de C # 3.5?

Il n'y a pas de C # 3.5 - la cause de la confusion ici est que le C # 3.0 est présent dans .NET 3.5. Cependant, le langage et le framework sont versionnés de manière indépendante - tout comme le CLR, qui est à la version 2.0 pour .NET 2.0 à 3.5, .NET 4 qui introduit CLR 4.0, nonobstant les Service Packs. Le CLR dans .NET 4.5 a diverses améliorations, mais le versionnement n'est pas clair: dans certains endroits, il peut être appelé CLR 4.5 (cette page MSDN utilisé pour se référer de cette façon, par exemple), mais le Environment.Version propriété rapporte toujours 4.0.xxx.

Des informations plus détaillées sur la relation entre la langue, le runtime et les versions du framework sont disponibles sur le C # en profondeur site. Cela inclut des informations sur les fonctionnalités de C # 3.0 que vous pouvez utiliser pour cibler .NET 2.0. (Si quelqu'un veut apporter tout le contenu dans cette réponse wiki, ils sont les bienvenus.)

En date du 3 mai 2017, l'équipe C # Language a créé un historique des versions C # et des fonctionnalités de leur dépôt github: Fonctionnalités ajoutées en versions de langage C #. Il y a aussi une page qui suit les fonctionnalités linguistiques à venir et récemment implémentées.


2394



Le plus gros problème en traitant les numéros de version de C # est le fait qu'il n'est pas lié à une version de .NET Framework, ce qui semble être dû aux versions synchronisées entre Visual Studio et .NET Framework.

La version de C # est en fait liée au compilateur, pas au framework. Par exemple, dans Visual Studio 2008, vous pouvez écrire C # 3.0 et cibler .NET Framework 2.0, 3.0 et 3.5. La nomenclature C # 3.0 décrit la syntaxe du code et les fonctionnalités prises en charge de la même manière que ANSI C89, C90, C99 décrire la syntaxe / les caractéristiques du code pour C.

Jeter un coup d'œil à Mono, et vous verrez que Mono 2.0 (implémenté la plupart du temps la version 2.0 du .NET Framework à partir des spécifications ECMA) prend en charge la syntaxe et les fonctionnalités C # 3.0.


241



C'est la même chose que la plupart des réponses ici, mais tabularisé pour plus de facilité, et il a des versions Visual Studio et .NET pour l'exhaustivité.

╔════════════╦════════════╦══════════════╦═════════════╦══════════════╗
║ C# version ║ VS version ║ .NET version ║ CLR version ║ Release date ║
╠════════════╬════════════╬══════════════╬═════════════╬══════════════╣
║    1.0     ║    2002    ║    1.0       ║     1.0     ║   Feb 2002   ║
║    1.2     ║    2003    ║    1.1       ║     1.1     ║   Apr 2003   ║
║    2.0     ║    2005    ║    2.0       ║     2.0     ║   Nov 2005   ║
║            ║            ║    3.0       ║     2.0     ║   Nov 2006   ║
║    3.0     ║    2008    ║    3.5       ║     2.0     ║   Nov 2007   ║
║    4.0     ║    2010    ║    4.0       ║     4       ║   Apr 2010   ║
║    5.0     ║    2012    ║    4.5       ║     4       ║   Aug 2012   ║
║    5.0     ║    2013    ║    4.5.1     ║     4       ║   Oct 2013   ║
║            ║            ║    4.5.2     ║     4       ║   May 2014   ║
║    6.0     ║    2015    ║    4.6       ║     4       ║   Jul 2015   ║
║            ║            ║    4.6.1     ║     4       ║   Nov 2015   ║
║            ║            ║    4.6.2     ║     4       ║   Aug 2016   ║
║    7.0     ║    2017    ║              ║             ║   Mar 2017   ║
║            ║            ║    4.7       ║     4       ║   May 2017   ║
║    7.1     ║ 2017(v15.3)║              ║             ║   Aug 2017   ║
║            ║            ║    4.7.1     ║     4       ║   Oct 2017   ║
║    7.2     ║ 2017(v15.5)║              ║             ║   Dec 2017   ║
║            ║            ║    4.7.2     ║     4       ║   Apr 2018   ║
║    7.3     ║ 2017(v15.7)║              ║             ║   May 2018   ║
╚════════════╩════════════╩══════════════╩═════════════╩══════════════╝

Note: Le développement de .NET est à peu près indépendant de VS ces jours-ci, il n'y a pas de corrélation entre les versions de chacun. Référer: https://docs.microsoft.com/en-us/dotnet/framework/migration-guide/versions-and-dependenciespour plus.


176



  • C # 1.0 avec Visual Studio.NET

  • C # 2.0 avec Visual Studio 2005

  • C # 3.0 avec Visual Studio 2008

  • C # 4.0 avec Visual Studio 2010

  • C # 5.0 avec Visual Studio 2012

  • C # 6.0 avec Visual Studio 2015

  • C # 7.0 avec Visual Studio 2017


164



VERSION_____SPÉCIFICATION LINGUISTIQUE______MICROSOFT COMPILER

C # 1.0/1,2____Décembre 2001?/ 2003?___________Janvier 2002?

C # 2.0_______Septembre 2005________________Novembre 2005?

C # 3.0_______Mai 2006_____________________Novembre 2006?

C # 4.0_______Mars 2009 (projet)______________Avril 2010?

C # 5,0; publié avec .NET 4.5 en août 2012

C # 6,0; publié avec .NET 4.6 2015

C # 7,0; publié avec .NET 4.7 2017


64



Vous pouvez vérifier les dernières versions de C # ici C# Versions


37



Historique des versions C #:

C # est un langage de programmation orienté objet simple et puissant développé par Microsoft.

C # a beaucoup évolué depuis sa première version en 2002. C # a été introduit avec .NET Framework 1.0.

Le tableau suivant répertorie les fonctionnalités importantes introduites dans chaque version de C #.

Enter image description here

Et la dernière version de C # est disponible en Versions C #.


35