Skip to main content

What are the correct version numbers for C#?


What are the correct version numbers for C#? What came out when? Why can't I find any answers about C# 3.5?



[This question is primarily to aid those who are searching for an answer using an incorrect version number, e.g. "C# 3.5". At the time of this writing, there are several questions tagged with "c#3.5". I'm shortly going to correct this, as recommended by the answer to this question about terminology. The hope is that anyone failing to find an answer with the wrong version number will find this answer and then search again with the right version number.]



EDIT: I've now retagged all of the questions marked "c#3.5" to "c#3.0" and "c#4" to "c#4.0" (excluding this one, of course). If those of us who care about this could try to keep an eye out for new questions with those tags, that would be handy :)


Source: Tips4allCCNA FINAL EXAM

Comments

  1. These are the versions of C# known about at the time of this writing:


    C# 1.0; released with .NET 1.0 and VS2002 (January 2002)
    C# 1.2 (bizarrely enough); released with .NET 1.1 and VS2003 (April 2003). First version to call Dispose on IEnumerators which implemented IDisposable. A few other small features.
    C# 2.0; released with .NET 2.0 and VS2005 (November 2005). Major new features: generics, anonymous methods, nullable types, iterator blocks
    C# 3.0; released with .NET 3.5 and VS2008 (November 2007). Major new features: lambda expressions, extension methods, expression trees, anonymous types, implicit typing (var), query expressions
    C# 4.0; released with .NET 4 and VS2010 (April 2010). Major new features: late binding (dynamic), delegate and interface generic variance, more COM support, named arguments and optional parameters
    C# 5.0; unknown time frame. Major features: async programming, caller info attributes. To be shipped with .NET 4.5; beta available on February 29th 2012 - full release time frame still unknown.


    There is no such thing as C# 3.5 - the cause of confusion here is that the C# 3.0 is present in .NET 3.5. The language and framework are versioned independently, however - as is the CLR, which is at version 2.0 for .NET 2.0 through 3.5, .NET 4 introducing CLR 4.0, service packs notwithstanding.

    More detailed information about the relationship between the language, runtime and framework versions is available on the C# in Depth site. This includes information about which features of C# 3.0 you can use when targeting .NET 2.0. (If anyone wants to bring all of the content into this wiki answer, they're welcome to.)

    ReplyDelete
  2. The biggest problem when dealing with C#'s version numbers is the fact that it is not tied to a version of the .NET Framework, which it appears to be due to the syncronized releases between Visual Studio and the .NET Framework.

    The version of C# is actually bound to the compiler, not the framework. For instance, in VS2008 you can write C# 3.0 and target .NET Framework 2.0, 3.0 and 3.5. The C# 3.0 nomenclature describes the version of the code syntax and supported features in the same way that ANSI C89, C90, C99 describe the code syntax/features for C.

    Take a look at Mono, you will see that Mono 2.0 (mostly implemented version 2.0 of the .NET Framework from the ECMA specs) supports the C# 3.0 syntax and features.

    ReplyDelete
  3. C# 1.0 with Visual Studio.NET

    C# 2.0 with Visual Studio 2005

    C# 3.0 with Visual Studio 2008

    C# 4.0 with Visual Studio 2010

    C# 5.0 installs on top of Visual Studio 2010, please refer http://blog.functionalfun.net/2010/10/pdc-2010-speculations.html for C#5.0.

    ReplyDelete
  4. VERSION_____LANGUAGE SPECIFICATION______MICROSOFT COMPILER

    C# 1.0/1.2____December 2001?/2003?___________January 2002?

    C# 2.0_______September 2005________________November 2005?

    C# 3.0_______May 2006_____________________November 2006?

    C# 4.0_______March 2009 (draft)______________April 2010?

    ReplyDelete

Post a Comment

Popular posts from this blog

[韓日関係] 首相含む大幅な内閣改造の可能性…早ければ来月10日ごろ=韓国

div not scrolling properly with slimScroll plugin

I am using the slimScroll plugin for jQuery by Piotr Rochala Which is a great plugin for nice scrollbars on most browsers but I am stuck because I am using it for a chat box and whenever the user appends new text to the boxit does scroll using the .scrollTop() method however the plugin's scrollbar doesnt scroll with it and when the user wants to look though the chat history it will start scrolling from near the top. I have made a quick demo of my situation http://jsfiddle.net/DY9CT/2/ Does anyone know how to solve this problem?

Why does this javascript based printing cause Safari to refresh the page?

The page I am working on has a javascript function executed to print parts of the page. For some reason, printing in Safari, causes the window to somehow update. I say somehow, because it does not really refresh as in reload the page, but rather it starts the "rendering" of the page from start, i.e. scroll to top, flash animations start from 0, and so forth. The effect is reproduced by this fiddle: http://jsfiddle.net/fYmnB/ Clicking the print button and finishing or cancelling a print in Safari causes the screen to "go white" for a sec, which in my real website manifests itself as something "like" a reload. While running print button with, let's say, Firefox, just opens and closes the print dialogue without affecting the fiddle page in any way. Is there something with my way of calling the browsers print method that causes this, or how can it be explained - and preferably, avoided? P.S.: On my real site the same occurs with Chrome. In the ex