Partager via


Comment : implémenter des fournisseurs sitemap ASP.NET

Mise à jour : novembre 2007

Cette rubrique explique comment vous pouvez créer des fournisseurs sitemap ASP.NET et configurer une application ASP.NET pour utiliser un fournisseur sitemap.

Le tableau suivant répertorie les rubriques connexes, qui fournissent le code de deux exemples de fournisseurs sitemap écrits en Visual Basic et C#. L'un de ces exemples utilise le fournisseur de données .NET Framework pour ODBC pour se connecter à une source de données ODBC. L'autre utilise une base de données Microsoft Access comme source de données.

Exemple de fournisseur sitemap de texte

Illustre un fournisseur sitemap de texte complet.

Exemple de fournisseur sitemap

Illustre un fournisseur sitemap Access complet.

Pour créer un fournisseur sitemap

  • Placez votre code source dans le répertoire App_Code de votre application.

    Remarque :

    Si vous avez déjà le code source dans le répertoire App_Code de votre application, vous devez ajouter la version du fournisseur sitemap qui est écrite dans le même langage que le code existant dans le répertoire.

    Le fournisseur sera compilé par ASP.NET lorsque votre application sera demandée. Pour plus d'informations, consultez Dossiers de code partagé dans des sites Web ASP.NET.

    – ou –

    Sinon, compilez le fournisseur sitemap en tant que bibliothèque et placez-le dans le répertoire Bin de votre application Web, ou affectez-lui un nom fort pour le placer ensuite dans le Global Assembly Cache. Par exemple, la commande suivante montre comment vous pouvez compiler un exemple de fournisseur sitemap à l'aide du compilateur de ligne de commande.

    vbc /out:<example_name>.dll /t:library <example_name>.vb /r:System.Web.dll /r:System.Configuration.dll
    
    csc /out:<example_name>.dll /t:library <example_name>.cs /r:System.Web.dll /r:System.Configuration.dll
    

Pour utiliser le fournisseur sitemap dans une application ASP.NET

  1. Configurez votre application Web pour utiliser le fournisseur sitemap, en ajoutant le fournisseur à votre fichier Web.config.

  2. Ajoutez des contrôles qui utilisent le fournisseur sitemap. Une fois le fichier Web.config modifié et le fournisseur compilé, le fournisseur charge les données de navigation dans l'instance de la classe SiteMap qui est dans mémoire. Désormais les données de navigation peuvent être utilisées par les composants de l'infrastructure de plan de site, tels que les contrôles SiteMapPath, TreeView et Menu, et afficher les informations sitemap pour les utilisateurs. L'exemple de code suivant utilise ces trois contrôles dans une page ASP.NET.

    <%@ Page Language="VB" %>
    
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    
    <script >
    
    </script>
    
    <html xmlns="http://www.w3.org/1999/xhtml" >
    <head id="Head1" >
      <title>Simple Navigation Controls</title>
    </head>
    <body>
      <form id="form1" >
      <div>
    
      <h2>Using SiteMapPath</h2>
      <asp:SiteMapPath ID="SiteMapPath1" Runat="server">
      </asp:SiteMapPath>
    
    
      <asp:SiteMapDataSource ID="SiteMapDataSource1" Runat="server" />
    
      <h2>Using TreeView</h2>
      <asp:TreeView ID="TreeView1" Runat="Server" DataSourceID="SiteMapDataSource1">
      </asp:TreeView>
    
      <h2>Using Menu</h2>
      <asp:Menu ID="Menu2" Runat="server" DataSourceID="SiteMapDataSource1">
      </asp:Menu>
    
      <h2>Using a Horizontal Menu</h2>
      <asp:Menu ID="Menu1" Runat="server" DataSourceID="SiteMapDataSource1"
        Orientation="Horizontal" 
        StaticDisplayLevels="2" >
      </asp:Menu>
    
      </div>
      </form>
    </body>
    </html>
    
    <%@ Page Language="C#" %>
    
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    
    <script >
    </script>
    
    <html xmlns="http://www.w3.org/1999/xhtml" >
    <head >
      <title>Simple Navigation Controls</title>
    </head>
    <body>
      <form id="form1" >
      <div>
    
      <h2>Using SiteMapPath</h2>
      <asp:SiteMapPath ID="SiteMapPath1" Runat="server">
      </asp:SiteMapPath>
    
    
      <asp:SiteMapDataSource ID="SiteMapDataSource1" Runat="server" />
    
      <h2>Using TreeView</h2>
      <asp:TreeView ID="TreeView1" Runat="Server" DataSourceID="SiteMapDataSource1">
      </asp:TreeView>
    
      <h2>Using Menu</h2>
      <asp:Menu ID="Menu2" Runat="server" DataSourceID="SiteMapDataSource1">
      </asp:Menu>
    
      <h2>Using a Horizontal Menu</h2>
      <asp:Menu ID="Menu1" Runat="server" DataSourceID="SiteMapDataSource1"
        Orientation="Horizontal" 
        StaticDisplayLevels="2" >
      </asp:Menu>
    
      </div>
      </form>
    </body>
    </html>
    

Voir aussi

Concepts

Implémentation de fournisseurs sitemap ASP.NET

Vue d'ensemble de la navigation de site ASP.NET

Sécurisation de la navigation de site ASP.NET

Sécurisation de l'accès aux données

Autres ressources

Sécurité des applications ASP.NET dans les environnements hébergés