ASP.NET 2.0 или 3.5?

Было время, когда я думал, что текущая не-бета-версия ASP.NET заявляла номер версии текущей .NET CLR (2.0), хотя .NET Framework была версии 3.5. Всякий раз, когда я видел «ASP.NET 3.5», я чувствовал, что кто-то написал это неправильно.

Однако я начинаю чувствовать, что я ошибаюсь. Изменился ли официальный номер версии ASP.NET с 2.0 на 3.5 (за то время, когда версия .NET Framework была 3.5), или он всегда официально был «ASP.NET 3.5» (а я был идиотом)?


person Chris    schedule 18.11.2009    source источник


Ответы (2)


Что касается CLR, то здесь всего 2.0; Что касается библиотек, то в ASP.NET есть определенные изменения в .NET Framework версий 2.0, 3.0, 3.5 и 3.5 SP1 (см. MSDN, например).

Поскольку есть изменения в функциях, я бы назвал его «ASP.NET 3.5».

Однако, что еще хуже, drop- в IIS, где вы можете выбрать «1.1 ...» или «2.0 ....», называется «версия ASP.NET». Конечно, здесь IIS имеет в виду версию CLR.

Мне не удалось найти "официального" заявления по этому поводу (хотя я и не искал). Microsoft, кажется, избегает этой проблемы. В приведенной выше ссылке MSDN они пишут об «Улучшениях ASP.NET в .NET Framework 3.5 SP1».

Итак, строго говоря, я предполагаю, что ASP.NET не имеет номера версии, точно так же, как WinForms не имеет номера версии или System.String не имеет номера версии. «ASP.NET 3.5» - это просто неформальное сокращение для части ASP.NET библиотек .net Framework 3.5.

person Heinzi    schedule 18.11.2009
comment
И, как добавленное странное примечание, следующей версией .Net будет .Net 4, а не 4.0. Также следует отметить, что версия 4 является обновлением CLR, поэтому вы увидите новое значение в раскрывающемся списке 4. - person Dillie-O; 18.11.2009
comment
Еще одно свидетельство: RuntimeEnvironment.GetRuntimeDirectory возвращает C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727 даже в ASP.NET 3.5, а C:\WINDOWS\Microsoft.NET\Framework\v3.5 не содержит никаких инструментов командной строки ASP.NET. - person Christian Hayter; 18.11.2009
comment
@Christian: Хорошее наблюдение! Между прочим, это не относится к ASP.NET: консольное приложение .net 3.5 также возвращает каталог v2.0.50727. GetRuntimeDirectory возвращает каталог CLR, а версия CLR, используемая для выполнения приложений, разработанных для платформы 2.0-3.5, - 2.0. - person Heinzi; 19.11.2009

Да, ASP.NET 2.0 и ASP.NET 3.5 разные. 3.5 - это самая последняя версия, не являющаяся бета-версией. И 2.0, и 3.5 используют среду выполнения 2.0.

person kemiller2002    schedule 18.11.2009