Fiche technique | |
---|---|
Type de produit : | Technologie |
Auteur : | Microsoft |
Date de publication : | 2002 |
Site Web : | https://www.asp.net/ |
La fin d'un passé noir
Tirant ses origines de l'ASP (Active Server Pages). Portant la moitié d'un nom de produit a moitié finit, lequel était critiqué par quiconque connaît le Web, l'ASP.NET révolutionne les préjugés passés, et tourne définitivement la page au passé scabreux des versions 1, 2 et 3 d'ASP. L'interpréteur de script font maintenant place à du code compilé à la volé, il utilise maintenant un cadre d'application bien structuré (celui de .NET) et a accès à toutes les possibilités du système d'exploitation !
Se tourner vers l'avenir
L'ASP.NET, c'est plus qu'un langage, c'est un multilangage. Ainsi, Microsoft change l'idée même de la suprématie d'un langage plutôt qu'un autre pour programmer des pages Web. Il est en effet possible, fournit de base avec l'environnement de base de Microsoft Visual Studio, Visual Studio Express ou Visual Studio Community, de développer en langage de programmation Visual Basic .NET ou/et en C#.
- De plus, Microsoft offre la possibilité de développer des pages Web entières sans jamais utiliser de JavaScript.
- Contrairement au version ASP 1, 2 et 3, la version .NET, recrée le Web entier, on retrouve par exemple, des balises spéciales, la possibilité d'exécuté les scripts sur la machine client ou serveur (un peu comme Jaxer),...
- La bibliothèque de code est construite de façon professionnelle et cohérente.
- Également, fait surprenant pour cette entreprise, le code des pages Web généré est rapide, stable et petit.
- Aussi, si vous développez des applications AJAX, Microsoft préconise l'utilisation de jQuery.
- Enfin, Microsoft encourage le développement d'autres langages à l'origine compétiteur, comme PHP .NET (Phalanger), Oberon .NET, Ruby .NET,...
Microsoft a donc investi de gros efforts pour concurrencer JSP et ColdFusion. L'entreprise a misé gros sur cette nouvelle technologie, et même si on ne peut échapper au critique, elles demeurent peu nombreuses :
- Le .NET n'est pas supporté sur toutes les plateformes.
- Son code est toujours propriétaire et fermé au public, gardant par conséquent ses secrets technologies pour lui seul.
- Nécessite de nombreux achats de licence.
Programmation d'un site d'ASP 3.0 vers ASP.NET
Contrairement à ASP 3.0, les objets ne sont plus accessible de base au même endroit. Ainsi, l'espace de nom System.Web contient la majorité des classes rendant les services qu'utilisaient l'ASP 3.0, toutefois les fonctions mathématiques se retrouvent dans la classe Math de l'espace de nom System. On notera parmi les faits intéressants :
- Vous pouvez encore utiliser le VB .NET pour programmer les sites, mais les documentations d'ASP.NET font davantage l'éloge de C# (C Sharp).
- Il est maintenant préférable d'utiliser la méthode «Request.QueryString.Get» plutôt que «Request.QueryString» pour demander la valeur retourné par un formulaire.
- Il faut utiliser «HttpContext.Current.Request.ServerVariables["nomvariable"]» plutôt que «Server.ServerVariables("nomvariable")».
- Il est préférable d'utiliser «(string)Context.Session["nomvariable"]» plutôt que «SESSION("nomvariable")» pour demander ou modifier les informations d'une variable de session du serveur.
- La méthode Server.MapPath de la classe HttpServerUtility permet de demander l'emplacement physique d'un fichier sur le serveur Web.
- Les balises HTML ou ASP.NET exécuté sur le serveur comporte toujours le paramètre «runat="server"» indiquant qu'ils sont exécutés du côté serveur.
- La méthode «Response.Write» est encore disponible avec la même syntaxe «Response.Write», comme au temps d'ASP 3.0.
- Vous devrez sans doute utiliser les méthodes «Convert.ToString» ou «Convert.ToInt32» pour convertir en chaîne de caractères ou en entier.
- On peut demander l'heure et la date en utilisant la propriété «System.DateTime.Now» plutôt que la fonction NOW.
- Vos bibliothèques de fonctions (ou de méthodes) se retrouvent maintenant dans le dossier «App_Code».
- Le dossier «App_Data» offre la possibilité de mettre des données comme des requêtes SQL et autres informations n'étant pas accessible de l'extérieur sur un site Web.
Extension de fichiers
Le ASP.NET utilise par défaut certaines extensions de fichiers afin de clarifier et de rendre fonctionnel les applications. Voici les extensions de fichier les plus communes qu'il utilise :
Nom | Description |
---|---|
.asax | Cette extension de fichier permet d'écrire du code pour gérer les événements globaux au niveau de l'application ASP.NET. Vous ne pouvez pas modifier le fichier portant le nom «global.asax». |
.ascx | Cette extension de fichier permet d'indiquer un contrôle utilisateur Web. |
.ashx | Cette extension de fichier permet d'indiquer une page pour l'intégration d'un gestionnaire générique. |
.asmx | Cette extension de fichier permet d'indiquer un service Web ASP.NET; il peut inclure un fichier code-behind correspondant ainsi que son code. |
.aspx | Cette extension de fichier permet d'indiquer un fichier ASP.NET (contenant du HTML et le code ASP.NET). |
.aspx.cs | Cette extension de fichier permet d'indiquer un fichier C# (C Sharp) associé à une page «ASP.NET» contenant généralement les méthodes d'action de contrôle. |
.aspx.vb | Cette extension de fichier permet d'indiquer un fichier Visual Basic .NET associé à une page «ASP.NET» contenant généralement les méthodes d'action de contrôle. |
.browser | Cette extension de fichier permet d'indiquer un fichier de définition du navigateur Web. |
.cd | Cette extension de fichier permet d'indiquer un fichier de diagramme de classe. |
.config | Cette extension de fichier permet d'indiquer un fichier de configuration associé au projet ou l'entreposage de réglages d'application. En générale, on a des fichiers nommés «Web.config», «appSettings.config», «connectionString.config»,... |
.csproj | Cette extension de fichier permet d'indiquer un fichier de projet C# (C Sharp). Il contient des détails sur le projet tels que des références et inclut, ainsi que le nom, la version, le guide,... |
.csproj.user | Cette extension de fichier permet d'indiquer les options utilisateur d'un projet C# (C Sharp). |
.cs | Cette extension de fichier permet d'indiquer un fichier contenant le code source C# (C Sharp). |
.css | Cette extension de fichier permet d'indiquer une feuille de style CSS. |
.disco | Cette extension de fichier permet d'indiquer un fichier facultatif servant de mécanisme de découverte pour le service Web XML. Le fichier .disco n'est pas créé automatiquement pour un service Web XML. |
.ico | Cette extension de fichier permet d'indiquer un fichier d'image pour créer une icône personnalisée. |
.js | Cette extension de fichier permet d'indiquer un fichier contenant du code source JavaScript. |
.htm | Cette extension de fichier permet d'indiquer une page HTML. |
.mdf | Cette extension de fichier permet d'indiquer une base de données SQL vide pour les données locales. |
.resx | Cette extension de fichier permet d'indiquer un fichier utilisé pour éditer et définir les ressources de l'application. |
.rpt | Cette extension de fichier permet d'indiquer un fichier Crystal Reports pouvant être publié sur un formulaire Web ou Windows. |
.sitemap | Cette extension de fichier permet d'indiquer une carte du site d'une application Web. |
.skin | Cette extension de fichier permet d'indiquer un fichier utilisé pour définir un thème ASP.NET pouvant être utilisé sur le site. |
.sln | Cette extension de fichier permet d'indiquer un fichier de solution. Il contient des informations sur les projets inclus dans la solution, ainsi que sur l'accès aux paramètres de construction globaux via la fenêtre des propriétés de la solution. |
.suo | Cette extension de fichier permet d'indiquer un fichier d'option utilisateur de solution. Il entrepose les paramètres spécifiques à l'utilisateur pour la solution. Le paquet d'intégration du contrôle de code source de Visual Studio .NET utilise ce fichier pour entreposer les tables de traduction d'enlisement pour les projets Web, les états hors connexion des projets et d'autres paramètres utilisés pour les liaisons de projet. |
.txt | Cette extension de fichier permet d'indiquer un simple fichier texte. |
.vb | Cette extension de fichier permet d'indiquer un fichier contenant le code source Visual Basic .NET (VB.NET). |
.vbproj | Cette extension de fichier permet d'indiquer un fichier de projet Visual Basic .NET (VB.NET). |
.vbproj.user | Cette extension de fichier permet d'indiquer les options utilisateur d'un projet Visual Basic .NET (VB.NET). |
.vbs | Cette extension de fichier permet d'indiquer un fichier contenant du code source VBScript. |
.wsf | Cette extension de fichier permet d'indiquer un fichier contenant un script exécuté en tant que programme Windows. |
.xml | Cette extension de fichier permet d'indiquer un fichier XML et un standard de données. |
.xsd | Cette extension de fichier permet d'indiquer un fichier de définition de schéma XML, norme de définition de données pour XML. Vous pouvez utiliser ces fichiers pour travailler avec des ensembles de données ainsi que des classes. |
.xslt | Cette extension de fichier permet d'indiquer un fichier XSLT, soit un standard pour la transformation de documents XML. |
AJAX
Le AJAX est disponible depuis la version 2.0 d'ASP.NET, et maintenant inclus de base à partir du Framework 3.5. Il est très facile à utiliser, il suffit d'utiliser les balises <asp:UpdatePanel> et <ContentTemplate>. Si vous ne souhaitez pas utiliser le code de Microsoft, il est possible d'utiliser des alternatives comme DynamicControlsPlaceholder de DenisBauer.com, lequel peut se révéler plus efficace que la solution Microsoft dans certains cas comme la possibilité d'ajouter autant de champ que souhaitez (si vous indiquez un ID altéatoire (new Random()).Next()) ou encore il évite de réécrire du code redondant dans la Page_Load.
Détails pratiques
Il est possible de connaître le IP du client consultant la page Web du serveur avec le simple code suivant :
on obtiendra le résultat suivant si vous développez directement sur votre poste de travail :
IP du client : 127.0.0.1Liste des versions
Version | Date |
---|---|
1.0 | 13 février 2002 |
1.1 | 24 avril 2003 |
2.0 | 7 novembre 2005 |
3.0 | 6 novembre 2006 |
3.5 | 19 novembre 2007 |
4.0 | 12 avril 2010 |
4.5 | 17 octobre 2013 |
4.5.2 | 5 mai 2014 |
4.6 | 20 juillet 2015 |
... | ... |
Remarques
- Si vous devez utiliser des gabarits avec code ASP.NET, l'entreprise Microsoft propose Razor comme gabarit.
- Si vous devez effectuer des communications avec des systèmes incompatibles comme Java ou BPEL par exemple, vous devriez envisager d'utiliser la technologie ESB.
Voir également
Langage de programmation - C# (C Sharp) - Introduction
Langage de programmation - VB .NET - Introduction
Langage de programmation - Visual C++ .NET