Frage Was sind die korrekten Versionsnummern für C #?


Was sind die korrekten Versionsnummern für C #? Was kam wann heraus? Warum kann ich keine Antworten finden? C # 3.5?

Diese Frage dient hauptsächlich dazu, denjenigen zu helfen, die nach einer Antwort suchen, die eine falsche Versionsnummer verwendet, z. C # 3.5. Die Hoffnung ist, dass jeder, der keine Antwort mit der falschen Versionsnummer findet, finden wird Dies Frage und dann erneut mit der richtigen Versionsnummer suchen.


2061


Ursprung


Antworten:


Versionsgeschichte der C # -Sprache:

Dies sind die Versionen von C # zum Zeitpunkt des Schreibens bekannt:

In Beantwortung der Frage des OP:

Was sind die korrekten Versionsnummern für C #? Was kam wann heraus? Warum kann ich keine Antworten zu C # 3.5 finden?

Es gibt keine solche Sache wie C # 3.5 - der Grund der Verwirrung hier ist, dass die C # 3.0 in .NET 3.5 vorhanden ist. Die Sprache und das Framework werden jedoch unabhängig voneinander versioniert. Dies gilt auch für die CLR mit der Version 2.0 für .NET 2.0 bis 3.5 und für .NET 4 mit der Einführung von CLR 4.0 für Service Packs. Die CLR in .NET 4.5 hat verschiedene Verbesserungen, aber die Versionierung ist unklar: an einigen Stellen kann es als CLR 4.5 (diese MSDN-Seite verwendet, um es auf diese Weise zum Beispiel zu bezeichnen), aber die Environment.Version Eigenschaft meldet noch 4.0.xxx.

Weitere Informationen über die Beziehung zwischen der Sprache, Laufzeit und Framework-Versionen finden Sie auf der C # in der Tiefe Seite? ˅. Dies beinhaltet Informationen darüber, welche Features von C # 3.0 Sie für .NET 2.0 verwenden können. (Wenn jemand alle Inhalte in diese Wiki-Antwort einbringen möchte, können sie das gerne tun.)

Ab dem 3. Mai 2017 erstellte das C # -Sprachteam eine Geschichte von C # -Versionen und -Features auf ihrem Github-Repo: Funktionen, die in C # -Sprachversionen hinzugefügt wurden. Es gibt auch eine Seite, die kommende und kürzlich implementierte Sprachfunktionen verfolgt.


2394



Das größte Problem beim Umgang mit den Versionsnummern von C # ist die Tatsache, dass es nicht an eine Version von .NET Framework gebunden ist, die anscheinend auf die synchronisierten Releases zwischen Visual Studio und .NET Framework zurückzuführen ist.

Die Version von C # ist tatsächlich an den Compiler gebunden, nicht an das Framework. In Visual Studio 2008 können Sie beispielsweise C # 3.0 schreiben und .NET Framework 2.0, 3.0 und 3.5 als Ziel verwenden. Die C # 3.0-Nomenklatur beschreibt die Version der Codesyntax und der unterstützten Funktionen auf die gleiche Weise ANSI C89, C90, C99 Beschreibe die Codesyntax / Features für C.

Sieh dir das an Monound Sie werden sehen, dass Mono 2.0 (die meist implementierte Version 2.0 von .NET Framework aus den ECMA-Spezifikationen) die C # 3.0-Syntax und -Funktionen unterstützt.


241



Dies ist das gleiche wie die meisten Antworten hier, aber tabellarisiert für Leichtigkeit, und es hat Visual Studio und .NET-Versionen für die Vollständigkeit.

╔════════════╦════════════╦══════════════╦═════════════╦══════════════╗
║ 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   ║
╚════════════╩════════════╩══════════════╩═════════════╩══════════════╝

Hinweis: Die .NET-Entwicklung ist in diesen Tagen ziemlich unabhängig von VS, es gibt keine Korrelation zwischen den einzelnen Versionen. Verweisen: https://docs.microsoft.com/en-us/dotnet/framework/migration-guide/versions-and-dependenciesfür mehr.


176



  • C # 1.0 mit Visual Studio.NET

  • C # 2.0 mit Visual Studio 2005

  • C # 3.0 mit Visual Studio 2008

  • C # 4.0 mit Visual Studio 2010

  • C # 5.0 mit Visual Studio 2012

  • C # 6.0 mit Visual Studio 2015

  • C # 7.0 mit Visual Studio 2017


164



AUSFÜHRUNG_____SPRACHE SPEZIFIKATION______MICROSOFT-KOMPILER

C # 1.0/1.2____Dezember 2001?/ 2003?___________Januar 2002?

C # 2.0_______September 2005________________November 2005?

C # 3.0_______Mai 2006_____________________November 2006?

C # 4.0_______März 2009 (Entwurf)______________April 2010?

C # 5.0; Veröffentlichung mit .NET 4.5 im August 2012

C # 6.0; veröffentlicht mit .NET 4.6 2015

C # 7,0; veröffentlicht mit .NET 4.7 2017


64



Sie können die neuesten C # -Versionen überprüfen Hier C# Versions


37



C # Versionsgeschichte:

C # ist eine einfache und leistungsfähige objektorientierte Programmiersprache, die von Microsoft entwickelt wurde.

C # hat sich seit der ersten Veröffentlichung im Jahr 2002 stark weiterentwickelt. C # wurde mit .NET Framework 1.0 eingeführt.

In der folgenden Tabelle sind wichtige Funktionen aufgeführt, die in den einzelnen Versionen von C # eingeführt wurden.

Enter image description here

Und die neueste Version von C # ist verfügbar in C # -Versionen.


35



Ich habe die meisten Versionen in dieser Tabelle zusammengefasst. Die einzigen, die fehlen, sollten ASP.NET Core-Versionen sein. Ich habe auch verschiedene Versionen von ASP.NET MVC hinzugefügt.

Beachten Sie, dass ASP.NET 5 in ASP.NET Core 1.0 umbenannt wurde und ASP.NET MVC 6 in ASP.NET Core MVC 1.0.0 umbenannt wurde. Ich glaube, dass diese Änderung irgendwann im Januar 2016 aufgetreten ist.

Ich habe das Veröffentlichungsdatum von ASP.NET 5 RC1 in die Tabelle aufgenommen, aber ich muss noch ASP.NET Core 1.0 und andere Kernversionen einbeziehen, da ich die genauen Veröffentlichungstermine nicht finden konnte. Weitere Informationen zu den Veröffentlichungsdaten für ASP.NET Core finden Sie hier: Wann ist ASP.NET Core 1.0 (ASP.NET 5 / vNext) für die Veröffentlichung geplant?

Version


33



Vergleichen der MSDN-Artikel "Was ist neu in der C # 2.0-Sprache und Compiler" und "Was ist neu in Visual C # 2005", ist es möglich zu folgern, dass" C # major_version.minor_version "entsprechend der Versionsnummerierung des Compilers geprägt ist.

Es gibt C # 1.2 entspricht .NET 1.1 und VS 2003 und auch benannt als Visual C # .NET 2003.

Aber weiter hat Microsoft aufgehört, die Nebenversionsnummern (nach dem Punkt) zu erhöhen oder sie anders als Null zu haben, 0. Es sollte jedoch beachtet werden, dass C # entsprechend .NET 3.5 in msdn.microsoft.com als benannt ist "Visual C # 2008 Service Pack 1".

Es gibt zwei parallele Namen: Nach der wichtigsten .NET / Compiler-Versionsnummerierung und nach Visual Studio-Nummerierung.

C # 2.0 ist ein Synonym für Visual C # 2005

C # 3.0 entspricht (oder genauer gesagt, kann Ziel):


25