2885 votes

Quels sont les numéros de version correcte en c# ?

Quels sont les numéros de version correcte en c# ? Ce qui est sorti quand ? Pourquoi est-ce que je ne peux pas trouver toutes les réponses sur c# 3.5 ?

Cette question est principalement d’aider ceux qui sont à la recherche d’une réponse à l’aide d’un numéro de version incorrect, par exemple « c# 3.5 ». L’espoir est que toute personne de ne pas trouver une réponse avec le numéro de version incorrecte trouverez cette question, puis effectuez une recherche à nouveau avec le numéro de version droite.

3186voto

Jon Skeet Points 692016

Ce sont des versions de C# connues au moment d'écrire ces lignes:

  • C# 1.0 publié avec .NET 1.0 et VS2002 (janvier 2002)
  • C# 1.2 (bizarrement assez); publié avec .NET 1.1 et VS2003 (avril 2003). Première version pour appel Dispose sur IEnumerators qui a mis en oeuvre IDisposable. Quelques autres petits éléments.
  • C# 2.0 publié avec .NET 2.0 et VS2005 (novembre 2005). De nouvelles fonctionnalités majeures: les génériques, les méthodes anonymes, les types nullables, iterator blocs
  • C# 3.0, publié avec .NET 3.5 et VS2008 (novembre 2007). De nouvelles fonctionnalités majeures: les expressions lambda, les méthodes d'extension, l'expression des arbres, des types anonymes, de typage implicite (var), les expressions de requête
  • C# 4.0 publié avec .NET 4 et VS2010 (avril 2010). De nouvelles fonctionnalités majeures: la liaison tardive (dynamic), de déléguer et de l'interface générique de la variance, plus de prise en charge COM, les arguments nommés et des paramètres optionnels
  • C# 5.0 publié avec .NET 4.5, en août 2012. Caractéristiques principales: programmation asynchrone, appelant info attributs.
  • C# 6.0 (avec la nouvelle Roslyn) - première Extrémité de l'Utilisateur Aperçu publié le 3 avril 2014. Caractéristiques (proposé): les principaux constructeurs, les initialiseurs de propriétés implémentées automatiquement, à l'aide de directives à l'importation statique des membres, la déclaration des expressions, des filtres d'exception, binaire littéraux et des chiffres séparateurs, indexé membres et de l'élément initialiseurs, await en catch et finally, l'extension Add méthodes de collecte des initialiseurs.

Il n'y a pas une telle chose comme C# 3.5 - la cause de la confusion ici, c'est que le C# 3.0 est présent dans .NET 3.5. La langue et le cadre sont versionnées indépendamment, cependant - comme c'est le CLR, qui est à la version 2.0 .NET 2.0 à 3.5 .NET 4 introduction CLR 4.0, service packs malgré. Le CLR .NET 4.5 a diverses améliorations, mais le doublage n'est pas clair: dans certains endroits, il peut être appelé CLR 4.5 (cette page MSDN utilisé pour se référer à elle de cette façon, par exemple), mais l' Environment.Version de la propriété de rapports toujours 4.0.xxx.

Des informations plus détaillées sur la relation entre la langue, de l'exécution et du cadre de versions est disponible sur le C# en Profondeur du site. Cela comprend des informations sur les fonctionnalités de C# 3.0, vous pouvez utiliser lors du ciblage .NET 2.0. (Si quelqu'un veut apporter tout le contenu dans ce wiki réponse, qu'ils sont les bienvenus.)

330voto

Bryan Rehbein Points 3947

Le plus gros problème lorsque l'on traite avec C#'s les numéros de version est le fait qu'il n'est pas lié à une version de l' .NET Framework, ce qui semble être dû à la synchronisées versions de Visual Studio et de la .NET Framework.

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

Jetez un oeil à Mono, vous verrez que les Mono 2.0 (pour la plupart mis en œuvre la version 2.0 de l' .NET Framework à partir des spécifications ECMA) prend en charge le C# 3.0 syntaxe et les fonctionnalités.

222voto

iTSrAVIE Points 445
  • 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

99voto

Pramodh Points 28

VERSION_____LANGAGE DE SPÉCIFICATION______COMPILATEUR DE MICROSOFT

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 (ébauche)______________avril 2010?

C# 5.0, publié avec .NET 4.5 en août 2012

41voto

En comparant les articles MSDN "Ce qui est Nouveau dans le C# 2.0 du Langage et du Compilateur" et "Ce qui est Nouveau dans Visual C# 2005", il est possible d'en déduire que "C# major_version.minor_version" est créé selon le compilateur de la version de numérotation.

Il est C# 1.2 correspondant .NET 1.1 et VS 2003 et a également nommé en tant que Visual C# .NET 2003

Mais encore sur Microsoft arrêté de l'incrément de version mineure (après le point) de nombres ou de faire d'autres que zéro 0.
Mais il convient de noter que le C# correspondant .NET 3.5 est nommé dans msdn.microsoft.com en tant que "Visual C# 2008 Service Pack 1"

Il y a 2 parallèle de nommage: par les grands .NET/compilateur de la numérotation de version et par Visual Studio numérotation

C# 2.0 est synonyme de Visual C# 2005
C# 3.0 correspond (ou, plus correctement, peut-cible):

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X