1 / 18

Cours techonologies .NET

Cours techonologies .NET. ASP.NET : introduction. Du client lourd au Web. On passe d’une application de type client lourd à une application de type client-serveur.

Download Presentation

Cours techonologies .NET

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Cours techonologies .NET ASP.NET : introduction

  2. Du client lourd au Web • On passe d’une application de type client lourd à une application de type client-serveur. • Les objets créés sur un écran ne pourront plus exister sur l’écran suivant, les boutons ne vont pas appeler de code exécutable en direct,… • Il va donc falloir modifier notre approche concernant toutes les interactions utilisateurs.

  3. Contexte Web, client / serveur Contexte Windows / client lourd Serveur Navigateur GET POST GET

  4. Création d’une application web vide: • Ca ressemble à ce qu’on connait! • Properties et Références auront le même rôle qu’en WinForm. • Reste le fichier web.config qui va recevoir tous les éléments de configuration de votre site web : • Pages par défaut • Chaines de connexion à la base • Paramétrage des logs • Définition des modules externes • …

  5. Création d’une première page web: • Comme en WinForm, on constate que notre écran n’est pas livré seul. • On distingue 3 fichiers : • Aspx : contient le code html et ASP.NET • Aspx.cs : contient le « code behind », la logique objet de notre écran • Aspx.designer.cs : contient le code généré par Visual Studio pour définir de façon objet les composants de l’interface graphique.

  6. Fichier aspx, entête: • Comment se fait le lien entre tous les fichiers aspx, cs et designer? • Language: langage utilisé dans les scripts asp.net. • CodeBehind, fichier contenant notre code personnalisé pour la page web. • Inherits : précise de quelle classe hérite notre aspx : il s’agit bien là d’une classe.

  7. Fichier aspx.cs: lse code behind • On retrouve ici ce qu’on connaissait: • Using • Namespace • Partial class • Ici, pas de constructeur, juste une méthode : Page_Load, qui contiendra toute la logique de chargement de la page.

  8. Le cycle de vie d’une page asp.net

  9. Code Behind: les variables disponibles • Notre page héritant de la classe Page, nous disposons d’un certains nombres de variables bien utiles. • Request: objet centralisant les données de la requête effectuée par le navigateur • Response: pendant de request, centralise les éléments qui seront sérialisés en HTML et qui seront renvoyés au navigateur • IsPostBack: booléen permettant de savoir si la requête en cours émane de la page elle-même.

  10. Code Behind: les variables disponibles • Session: Cache utilisateur. Il s’agit d’un dictionnary <string,object> permettant de stocker des informations pour l’utilisateur en cours. • Application: Cache applicatif. Il fonctionne exactement comme la session. La seule différence est que les informations sont partagées entre tous les utilisateurs de l’application.

  11. ASP.NET: un langage de balises • Une page aspx n’est rien d’autre qu’une page html contenant du code pouvant être exécuté sur le serveur. • On distingue 2 types de balises: • <% code %> : le code (C# ou VB) situé entre ces balises sera interprété au moment du render • <asp:button>, <asp:label> : les composants présentés sous cette forme seront analysés pendant l’init et seront donc utilisable au moment du load. • Ces appels ne sont en fait qu’une façon d’appeler du code objet au sein d’une page aspx. • On pourrait appeler ces objets directement depuis le code behind.

  12. ASP.NET: un langage de balises • L’attribut runat=‘‘server’’: • Cet attribut permet de dire au compilateur et au générateur de code qu’un composant doit être visible pour le serveur et plus particulièrement pour l’interpréteur .NET. • Sans cet attribut, la méthode d’init n’ajoutera pas le contrôle à la liste des contrôles accessibles dans le code behind. • Le fait de placer un runat=server sur n’importe quel élément de l’aspx(composant asp ou html) le fera apparaitre dans le designer.

  13. ASP.NET: les composants de base • HtmlControl: • Chaque élément html(div, span, p, form,…) ayant un runat=server sera considéré comme une instance de cette classe. • A partir de cette classe, on peut accéder et en éditer le contenu, ainsi que les éléments enfants quand il y en a. • Label : • Constitue une zone texte non éditable. • Génèrera généralement un span côté html

  14. ASP.NET: les composants de base • Textbox: • Constitue une zone texte éditable. • Génèrera un input de type text côté html • Checkbox: • Une simple case à cocher • Input de type checkbox • Panel : • Il s’agit d’un « conteneur » graphique. • Le render génèrera ici une div. • …

  15. Visual Studio : les fonctions web • Pour simplifier le développement, Visual Studio propose un serveur de développement lancé automatiquement et capable de faire tourner notre application web sans avoir une version de windows server et de IIS installée. • Il s’agit d’un processwindows nommé webdev.webserver40.exe . En cas de crash intempestif de votre application, vous pourrez être amenés à killer ce process.

  16. Visual Studio : les fonctions web • Ce serveur de dev a été nommé « Cassini » par Microsoft. (cette information pourra éventuellement vous servir dans des recherches sur le web) • Vous pouvez obtenir des informations sur l’état d’exécution de ce process via la barre des tâches.

  17. Configuration Cassini: • Dans les propriétés du projet web, dans l’onglet web, on accède aux paramètres de cassini: • Pour l’activer, il suffit de cocher « Utiliser le serveur VS Development » • On peut également spécifier le port sur lequel il écoutera les requêtes web. • On peut aussi le laisser gérer son port seul. • Cette configuration n’implique que le site en phase de développement. • Après livraison ces informations auront disparu.

  18. Configuration Cassini: • On peut/doit également lui préciser une page de démarrage: • Sans page définie, le serveur ira toujours chercher un default ou un index(.aspx ou .html). • La page par défaut peut se définir dans l’explorateur de solution en faisant un clic droit sur la page concerné puis « définir comme page de démarrage ».

More Related