Каковы правильные номера версий для C #? Что получилось когда? Почему я не могу найти ответы о C # 3.5 ?
Этот вопрос в первую очередь, чтобы помочь тем, кто ищет ответ, используя неправильный номер версии, например, C # 3.5 . Надежда состоит в том, что любой, кто не сможет найти ответ с неправильным номером версии, найдет этот вопрос и затем выполнит поиск с правильным номером версии.
Ответы:
История версий языка C #:
Это версии C #, известные на момент написания этой статьи:
Dispose
наIEnumerator
S, которая реализованаIDisposable
. Несколько других мелких особенностей.var
), выражения запросовdynamic
), общая дисперсия делегата и интерфейса, расширенная поддержка COM, именованные аргументы, тип данных кортежа и необязательные параметры.await
вcatch
иfinally
, удлинителиAdd
методы в инициализаторах сбора.out
параметров , локальные функции , двоичные литералы, разделители цифр и произвольные асинхронные возвраты .unmanaged
ограничения общего типа .ref
переназначения. Небезопасные улучшения:stackalloc
инициализация, открепленные индексированныеfixed
буферы, пользовательскиеfixed
операторы. Улучшено разрешение перегрузки. Переменные выражения в инициализаторах и запросах.==
и!=
определено для кортежей. Поля поддержки авто-свойств теперь могут быть нацелены на атрибуты.new
выражения целевого типа , Цель набрана??
и?
), ковариантный возврат. Незначительные особенности: упорядоченный порядокref
иpartial
модификаторы, проверка нулевого параметра, лямбда-параметры сброса, нативныеint
s, атрибуты локальных функций, указатели на функции, статические лямбда-выражения, расширениеGetEnumerator
, инициализаторы модуля, расширяющий партиал.В ответ на вопрос ОП:
C # 3.5 не существует - причина путаницы в том, что C # 3.0 присутствует в .NET 3.5. Тем не менее, язык и инфраструктура работают независимо друг от друга - как и CLR, которая находится в версии 2.0 для .NET 2.0 до 3.5, в .NET 4 вводится CLR 4.0, несмотря на пакеты обновления. CLR в .NET 4.5 имеет различные улучшения, но управление версиями неясно: в некоторых местах его можно назвать CLR 4.5 (например, эта страница MSDN использовалась для ссылки на него таким образом), но
Environment.Version
свойство по-прежнему сообщает 4.0. ххх.По состоянию на 3 мая 2017 г. языковая команда C # создала историю версий и функций C # в своем репозитории GitHub: функции, добавленные в языковые версии C # . Также есть страница, которая отслеживает будущие и недавно реализованные языковые функции .
источник
Это то же самое, что и большинство ответов здесь, но для удобства составлено в виде таблицы, и для полноты изложения оно имеет версии Visual Studio и .NET .
Примечание. В настоящее время разработка .NET практически не зависит от VS, корреляции между версиями нет.
Обратитесь к разделу « .NET Framework версии и зависимости » для получения дополнительной информации.
источник
Самая большая проблема при работе с номерами версий C # заключается в том, что он не привязан к версии .NET Framework, что, по-видимому, связано с синхронизированными выпусками между Visual Studio и .NET Framework.
Версия C # фактически связана с компилятором, а не с фреймворком. Например, в Visual Studio 2008 вы можете написать C # 3.0 и целевой .NET Framework 2.0, 3.0 и 3.5. Номенклатура C # 3.0 описывает версию синтаксиса кода и поддерживаемые функции так же, как ANSI C89, C90, C99 описывают синтаксис / функции кода для C.
Взгляните на Mono , и вы увидите, что Mono 2.0 (в основном реализованная версия 2.0 .NET Framework из спецификаций ECMA) поддерживает синтаксис и функции C # 3.0.
источник
C # 1.0 с Visual Studio.NET
C # 2.0 с Visual Studio 2005
C # 3.0 с Visual Studio 2008
C # 4.0 с Visual Studio 2010
C # 5.0 с Visual Studio 2012
C # 6.0 с Visual Studio 2015
C # 7.0 с Visual Studio 2017
C # 8.0 с Visual Studio 2019
источник
_____
СПЕЦИФИКАЦИЯ ВЕРСИИ ЯЗЫКА______
MICROSOFT COMPILERC # 1.0 / 1.2
____
декабря 2001 года ? / 2003 ?___________
Январь 2002 ?C # 2.0
_______
сентябрь 2005 г.________________
ноябрь 2005 г. ?C # 3.0
_______
май 2006 г._____________________
ноябрь 2006 г. ?C # 4.0
_______
Март 2009 (черновик)______________
Апрель 2010 ?C # 5.0; выпущен с .NET 4.5 в августе 2012 года
С № 6,0; выпущен с .NET 4.6 2015
С № 7,0; выпущен с .NET 4.7 2017
C # 8,0; выпущен с .NET 4.8 2019
источник
История версий C #:
C # - это простой и мощный объектно-ориентированный язык программирования, разработанный Microsoft.
C # сильно изменился с момента его первого выпуска в 2002 году. C # был представлен с .NET Framework 1.0.
В следующей таблице перечислены важные функции, представленные в каждой версии C #.
И последняя версия C # доступна в версиях C # .
1 :
источник
Я суммировал большинство версий в этой таблице. Не хватает только версий ASP.NET Core. Я также добавил разные версии ASP.NET MVC.
Обратите внимание, что ASP.NET 5 был переименован в ASP.NET Core 1.0, а ASP.NET MVC 6 переименован в ASP.NET Core MVC 1.0.0. Я считаю, что это изменение произошло где-то в январе 2016 года.
Я включил в таблицу дату выпуска ASP.NET 5 RC1, но я еще не включил ASP.NET core 1.0 и другие версии ядра, потому что я не смог найти точные даты выпуска. Вы можете узнать больше о датах выпуска ASP.NET Core здесь: Когда планируется выпуск ASP.NET Core 1.0 (ASP.NET 5 / vNext)?
источник
Вы можете проверить последние версии C # здесь
источник
Сравнивая статьи MSDN «Что нового в языке C # 2.0 и компиляторе» и « Что нового в Visual C # 2005 », можно сделать вывод, что «C # major_version.minor_version» придуман в соответствии с нумерацией версий компилятора.
Существует C # 1.2, соответствующий .NET 1.1 и VS 2003, а также называется Visual C # .NET 2003 .
Но в дальнейшем Microsoft перестала увеличивать номера минорных версий (после точки) или иметь их, кроме нуля
0
. Хотя следует отметить, что C #, соответствующий .NET 3.5, назван в msdn.microsoft.com как «Visual C # 2008 Service Pack 1» .Существует два параллельных именования: по основной нумерации версий .NET / компилятора и по нумерации Visual Studio.
C # 2.0 является синонимом Visual C # 2005
C # 3.0 соответствует (или, вернее, может быть целью):
источник
C # 1.0 - Visual Studio .NET 2002
C # 1.2 - Visual Studio .NET 2003
C # 3 - Visual Studio 2008
C # 4 - Visual Studio 2010
C # 5 - Visual Studio 2012
C # 6 - Visual Studio 2015
C # 7.0 - Visual Studio 2017
C # 7.1 - Visual Studio 2017 версия 15.3
C # 7.2 - Visual Studio 2017 версия 15.5
C # 7.3 - Visual Studio 2017 версия 15.7
C # 8.0 - .NET Core 3.0 и Visual Studio 2019 версии 16.3
[источник]: https://github.com/dotnet/csharplang/blob/master/Language-Version-History.md
источник
C # 8.0 - это последняя версия c # .it поддерживается только в .NET Core 3.x и более новых версиях. Многие из новейших функций требуют библиотеки и функций времени выполнения, представленных в .NET Core 3.x
В следующей таблице перечислены целевые рамки с версией и их версия C # по умолчанию.
Источник - версия на языке C #
источник