Como: Implementar provedores de mapas de site ASP.NET
Este tópico descreve como você pode cria provedores de mapa de site ASP.NET e configura um aplicativo ASP.NET para usar um provedor de mapa de site.
A tabela a seguir lista os tópicos acompanhados, que incluem o código para dois provedores de mapa de site de exemplo escritos em Visual Basic e C#.Um dos provedores exemplo usa o provedor de dados ODBC do .NET Framework para conectar-se a uma fonte de dados ODBC.O outro exemplo utiliza um banco de dados do Microsoft Access como sua fonte de dados.
Ilustra um provedor completo de mapa de site baseado em texto. |
|
Ilustra um provedor completo de mapa de site baseado em Access. |
Para criar um provedor de mapa de site
Coloque o código-fonte no diretório App_Code do seu aplicativo.
Observação: Se você já tiver código-fonte no diretório App_Code do seu aplicativo, você deve adicionar a versão do provedor de mapa de site que está escrito na mesma linguagem que o código existente no diretório.
O provedor será compilado pelo ASP.NET quando seu aplicativo for solicitado.Para obter mais informações, consulte Pastas de código compartilhado em sites da Web ASP.NET.
-Ou--
Como alternativa, compile o provedor de mapa de site como uma biblioteca e coloque-o no diretório Bin do seu aplicativo da Web, ou altamente denomine-o e coloque-o no cache global de assemblies (GAC).Por exemplo, o comando a seguir mostra como você pode compilar um provedor de mapa de site usando o compilador de linha de comando.
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
Para usar o provedor de mapa de sites em um aplicativo ASP.NET
Configure seu aplicativo da Web para usar o provedor de mapa de site, adicionando o provedor ao seu arquivo Web.config.
Adicione controles que usam o provedor de mapa de site.Após o arquivo Web.config ser alterado e o provedor ser compilado, o provedor carrega dados de navegação para a instância da classe SiteMap que está na memória.Agora os dados de navegação podem ser usados por componentes da infraestrutura de mapa de site — como os controles SiteMapPath,TreeView e Menu — para exibir informações de mapa de sites de usuários.O código exemplo a seguir usa todos os três controles em uma página 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>
Consulte também
Conceitos
Implementando provedores site-Map em ASP.NET
Visão geral sobre navegação em sites do ASP.NET
Tornando navegação em sites do ASP.NET seguro