Vous êtes actuellement hors ligne, en attente de reconnexion à Internet.

INFO : Présentation du modèle Code-Behind ASP.NET

Ancien nº de publication de cet article : F303247
Cet article peut contenir des liens vers des informations en langue anglaise (pas encore traduites).
Cet article fait référence à l'espace de noms Bibliothèque de classes Microsoft .NET Framework suivant :
  • System.Web.UI
Résumé
Cet article fournit une courte présentation du modèle code-behind introduit dans ASP.NET.
Plus d'informations
ASP.NET prend en charge deux méthodes pour écrire des pages :
  • Code en ligne
  • Code-behind

Code en ligne

Le code en ligne correspond à du code imbriqué directement dans la page ASP.NET. Le code suivant est un exemple de page ASP.NET qui inclut du code en ligne :

Myinlinecode.aspx
<%@ Language=C# %><HTML>   <script runat="server" language="C#">   void MyButton_OnClick(Object sender, EventArgs e)   {      MyLabel.Text = MyTextbox.Text.ToString();   }   </script>   <body>      <form id="MyForm" runat="server">         <asp:textbox id="MyTextbox" text="Hello World" runat="server"></asp:textbox>         <asp:button id="MyButton" text="Echo Input" OnClick="MyButton_OnClick" runat="server"></asp:button>         <asp:label id="MyLabel" runat="server"></asp:label>      </form>   </body></HTML>				

Code-Behind

Code-behind fait référence à du code de page ASP.NET contenu dans un fichier de classe distinct. Cela permet d'établir une séparation propre entre le code HTML et la logique de présentation. L'exemple suivant illustre une page de code-behind ASP.NET :

MyCodebehind.aspx
<%@ Language="C#" Inherits="MyStuff.MyClass" %><HTML>    <body>        <form id="MyForm" runat="server">        <asp:textbox id="MyTextBox" text="Hello World" runat="server"></asp:textbox>        <asp:button id="MyButton" text="Echo Input" Onclick="MyButton_Click" runat="server"></asp:button>        <asp:label id="MyLabel" runat="server" />        </form>    </body></HTML>				
Mycodebehind.cs
using System;using System.Web;using System.Web.UI;using System.Web.UI.WebControls;namespace MyStuff{    public class MyClass : Page    {        protected System.Web.UI.WebControls.Label MyLabel;        protected System.Web.UI.WebControls.Button MyButton;        protected System.Web.UI.WebControls.TextBox MyTextBox;        public void MyButton_Click(Object sender, EventArgs e)        {            MyLabel.Text = MyTextBox.Text.ToString();        }    }}				
Dans l'exemple précédent, vous pouvez utiliser la syntaxe suivante pour compiler Mycodebehind.cs :
csc.exe /out:mycodebehind.dll /t:library mycodebehind.cs
Quand vous utilisez le code suivant, la page de code-behind hérite da la classe Page. La classe Page réside dans l'espace de noms System.Web.UI :
public class MyClass : Page				
Hériter de la classe Page permet à la page de code-behind d'accéder aux objets intrinsèques ASP.NET, tels que Request et Response. De plus, hériter de la classe Page fournit un cadre pour gérer des événements pour les contrôles au sein de la page ASP.NET.

Dans l'exemple précédent, la page de code-behind est compilée avant les exécutions ASP.NET. Vous pouvez également référencer la classe code-behind à l'aide d'une balise SRC, comme suit :
<%@ Language="C#" Inherits="MyStuff.MyClass" src="MyCodebehind.cs" %>				
Dans ce cas, ASP.NET compile la page de code-behind au vol. Notez que cette étape de compilation survient uniquement lors de la mise à jour du fichier de code-behind (elle-même détectée par le biais d'une modification d'horodatage).

Prise en charge de code-behind dans Visual Studio .NET

Lorsque vous utilisez Microsoft Visual Studio .NET pour créer des formulaires Web ASP.NET, les pages de code-behind constituent la méthode par défaut. En outre, Visual Studio .NET effectue automatiquement la précompilation pour vous lorsque vous générez votre solution. Notez que les pages de code-behind créées dans Visual Studio .NET incluent un attribut de page spécial, Codebehind, que Visual Studio .NET utilise.
Références
Pour plus d'informations, cliquez sur le numéro ci-dessous pour afficher l'article correspondant dans la Base de connaissances Microsoft.
313105 BOGUE : Impossible de compiler des fichiers code-behind qui utilisent un attribut Src sur un partage UNC
codebehind
Propriétés

ID d'article : 303247 - Dernière mise à jour : 01/23/2006 17:45:01 - Révision : 3.2

Microsoft ASP.NET 1.1, Microsoft ASP.NET 1.0

  • kbinfo kbwebforms KB303247
Commentaires
&t=">