Accueil
Rechercher:
sur developpez.com sur les forums
Forums | Newsletter | Tutoriels | F.A.Q's | Participez | Hébergement | Contacts
Club Dév. Web PHP ASP XML XMLRAD Python Assembleur Autres Windows Linux
Accueil Java DotNET & C# Visual Basic C & C++ Delphi Pascal Access SQL & SGBD Oracle UML
FORUMS C/C++ F.A.Q C F.A.Q C++ F.A.Q VC++ F.A.Q BCB TUTORIELS C/C++ LIVRES C/C++ COMPILATEURS

 

Les Labs Microsoft

Section C# / Asp.Net du site http://phenix.developez.com

par Patrick VALERI

Plan du site - Autres sections

Labs ASP.NET v1.1 Aurélien Norie & Sébastien Bovo [Microsoft]

J'ai repris les codes d'origine VB.NET en C# et apporter quelques commentaires.

Index DotNet Lab suivant Lab précédent Dernier Lab

 

Lab07

But du Lab

Le but de ce Lab est de présenter les différentes techniques de mise en cache en ASP.NET.

Exercice 1 – Cache de sortie de page

  • Créer une nouvelle application Web ASP.NET en Visual Basic : « 07VBCaching »
  • Ajouter 1 label à la page « WebForm1.aspx »
  • Dans le code HTML, ajouter la directive suivante tout en haut de la page :

<%@ OutputCache Duration="10" VaryByParam="none" %>

  • Dans le « Page_Load » du code behind, afficher l’heure courante dans le label :

Label1.Text = "Dernière génération de la page : " & Now

  • Compiler et afficher la page.
  • Actualiser la page plusieurs fois
  • Constater que la page affichée est la page mise en cache. Une nouvelle version de la page est générée toutes les 10 secondes.
  • Ajouter maintenant 2 hyperlinks à la page.
  • Préciser la propriété « NavigateUrl » comme suit :
    • HyperLink1 : « WebForm1.aspx?myColor=red »
    • HyperLink2 : « WebForm1.aspx?myColor=blue »
  • Préciser la propriété « Text » comme suit :
    • HyperLink1 : «  Rouge »
    • HyperLink2 : « Bleu »
  • Dans le code HTML, modifier la directive OutputCache. Mettre « Duration=30 » et « VaryByParam="myColor" »
  • Modifier le « Page_Load » de la manière suivante :

 

Private Sub Page_Load( ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

Label1.Text = "Dernière génération de la page : " & Now

If Request.QueryString("myColor") <> "" Then

Label1.ForeColor = Color.FromName(Request.QueryString("myColor"))

End If

End Sub

Et en C# :

private void Page_Load( object sender, System.EventArgs e)

{

// Placer ici le code utilisateur pour initialiser la page

Label1.Text = "Dernière génération de la page : " + System.DateTime.Now;

Label1.Font.Bold= true; //Pour afficher en gras

if (Request.QueryString["myColor"]!= null)

{

Label1.ForeColor = Color.FromName(Request.QueryString["myColor"]);

}

}

  • Compiler et afficher la page.
  • Cliquer sur le lien « Rouge » et noter l’heure de génération de la page.
  • Cliquer sur le lien « Bleu » et noter qu’une nouvelle version de la page a été créée bien que les 30 secondes de caching ne soient pas encore écoulées. Grâce à l’attribut VaryByParam="myColor" une page est mise en cache pour chaque valeur du paramètre « myColor ».

Exercice 2 – Cache par fragments de page

  • Ajouter un contrôle Web utilisateur à l’application
  • Dans le code HTML, ajouter la directive suivante tout en haut de la page :

<%@ OutputCache Duration="10" VaryByParam="none" %>

  • Ajouter un Label au contrôle
  • Dans le « Page_Load » du code behind, afficher l’heure courante :

Label1.Text = "Dernière génération du contrôle : " & Now

  • Modifier le caching de la page ASPX afin de ne la mettre en cache que 5 secondes au lieu de 30
  • Ajouter le contrôle à la page « WebForm1.aspx »
  • Générer le projet et naviguer sur la page ASPX.
  • Constater que le contrôle Web utilisateur est mis en cache 10 secondes alors que le reste de la page est régénéré toutes les 5 secondes.

Ce document est issu de http://phenix.developpez.com/ et reste la propriété exclusive de son auteur.
La copie, modification et/ou distribution par quelque moyen que ce soit est soumise à l'obtention préalable de l'autorisation de l'auteur.
Vos questions techniques : forum d'entraide C & C++ - Publiez vos articles, tutoriels et cours
et rejoignez-nous dans l'équipe de rédaction du club d'entraide des développeurs francophones
Nous contacter - Copyright © 2000-2004 www.developpez.com

Analyse et mesure de frequentation internet par


hit-parade