6

Il fut un temps où je pensais que l'actuel ASP.NET non bêta réclamait le numéro de version de l'actuel .NET CLR (2.0), même si le .NET Framework était la version 3.5. Chaque fois que j'ai vu "ASP.NET 3.5", j'ai senti que celui qui l'avait écrit était incorrect.ASP.NET 2.0 ou 3.5?

Cependant, je commence à sentir que je suis incorrect. Le numéro de version ASP.NET officiel est-il passé de la version 2.0 à la version 3.5 (pendant que la version .NET Framework a été 3.5) ou a-t-il toujours été officiellement "ASP.NET 3.5" (et j'ai été un idiot)?

Répondre

10

En termes de CLR, il n'y a que 2,0; En termes de bibliothèques, il existe des modifications définies dans ASP.NET dans les versions .net Framework 2.0, 3.0, 3.5 et 3.5 SP1 (voir MSDN, for example).

Puisqu'il y a des changements de fonctionnalité, je l'appellerais "ASP.NET 3.5".

Cependant, pour empirer les choses, le drop-down box in IIS où vous pouvez sélectionner "1.1 ..." ou "2.0 ...." est appelé "version ASP.NET". Bien sûr, IIS fait référence à la version CLR ici.

J'ai été incapable de trouver une déclaration "officielle" à ce sujet (je n'ai pas regardé dur, cependant). Microsoft semble éviter ce problème. Dans le lien MSDN ci-dessus, ils écrivent à propos de "ASP.NET Enhancements in .net Framework 3.5 SP1".

Alors, strictement parlant, je suppose que ASP.NET ne dispose pas d'un numéro de version, comme WinForms ne dispose pas d'un numéro de version ou System.String ne dispose pas d'un numéro de version. "ASP.NET 3.5" est simplement une abréviation informelle pour la partie ASP.NET des bibliothèques .net Framework 3.5.

+1

Et juste comme une note étrange ajoutée, la prochaine version de .Net va être .Net 4, pas 4.0. Il convient également de noter que la version 4 est une mise à niveau du CLR, vous verrez donc une nouvelle valeur dans la liste déroulante de 4. –

+0

Plus de preuve: 'RuntimeEnvironment.GetRuntimeDirectory' renvoie' C: \ WINDOWS \ Microsoft.NET \ Framework \ v2.0.50727' même sur ASP.NET 3.5, et 'C: \ WINDOWS \ Microsoft.NET \ Framework \ v3.5' ne contient aucun outil de ligne de commande ASP.NET. –

+0

@Christian: Bonne observation! D'ailleurs, ce n'est pas spécifique à ASP.NET: Une application de console .net 3.5 * retournera * également le répertoire v2.0.50727. 'GetRuntimeDirectory' renvoie le répertoire CLR et la version CLR utilisée pour exécuter les applications développées pour le framework 2.0-3.5 est 2.0. – Heinzi

2

Oui, ASP.NET 2.0 et ASP.NET 3.5 sont différents. 3.5 est la version non bêta la plus récente. Les deux versions 2.0 et 3.5 utilisent l'environnement d'exécution 2.0.