6

Był czas, że myślałem, że obecny nie-beta ASP.NET zgłosił numer wersji bieżącej .NET CLR (2.0), mimo że .NET Framework był w wersji 3.5. Ilekroć widziałem "ASP.NET 3.5", czułem, że ten, kto to napisał, był niepoprawny.ASP.NET 2.0 lub 3.5?

Jednak zaczynam odczuwać, że Jestem niepoprawny. Czy oficjalny numer wersji ASP.NET został zmieniony z wersji 2.0 na 3.5 (podczas gdy wersja .NET Framework miała 3,5), czy też zawsze oficjalnie była to "ASP.NET 3.5" (a ja byłem idiotą)?

Odpowiedz

10

Pod względem CLR jest tylko 2,0; w odniesieniu do bibliotek, istnieją określone zmiany w ASP.NET w .net Framework w wersji 2.0, 3.0, 3.5 i 3.5 SP1 (patrz MSDN, for example).

Ponieważ istnieją zmiany funkcji, nazwałbym to "ASP.NET 3.5".

Jednak, co jest jeszcze trudniejsze, drop-down box in IIS, gdzie można wybrać "1.1 ..." lub "2.0 ...." nazywa się "wersja ASP.NET". Oczywiście, IIS odnosi się tutaj do wersji CLR.

Nie udało mi się znaleźć "oficjalnego" oświadczenia w tej sprawie (nie wyglądam jednak na surowo). Microsoft wydaje się unikać tego problemu. W powyższym linku MSDN piszą o "Udoskonaleniach ASP.NET w .net Framework 3.5 SP1".

Tak, ściśle mówiąc, myślę, ASP.NET nie posiada numeru wersji, podobnie jak WinForms nie posiada numeru wersji lub System.String nie posiada numeru wersji. "ASP.NET 3.5" jest tylko nieformalnym skrótem do części ASP.NET bibliotek .NET Framework 3.5.

+1

I tak jak dodał dziwny komunikat, następną wersją .Net będzie .Net 4, a nie 4.0. Warto również zauważyć, że wersja 4 jest uaktualnieniem do CLR, więc zobaczysz nową wartość na rozwijanej liście 4. –

+0

Więcej dowodów: 'RuntimeEnvironment.GetRuntimeDirectory' zwraca' C: \ WINDOWS \ Microsoft.NET \ Framework \ v2.0.50727' nawet w ASP.NET 3.5 i 'C: \ WINDOWS \ Microsoft.NET \ Framework \ v3.5' nie zawiera żadnych narzędzi wiersza poleceń ASP.NET. –

+0

@Christian: Dobra obserwacja! To nie jest specyficzne dla ASP.NET, przy okazji: aplikacja konsoli .net 3.5 * również * zwróci katalog v2.0.50727. 'GetRuntimeDirectory' zwraca katalog CLR, a wersja CLR używana do uruchamiania aplikacji opracowanych dla architektury 2.0-3.5 to 2.0. – Heinzi

2

Tak, ASP.NET 2.0 i ASP.NET 3.5 są różne. 3.5 to najnowsza wersja bez wersji beta. Zarówno 2.0, jak i 3.5 używają środowiska wykonawczego 2.0.

Powiązane problemy