

| com exemplos em VB |
| Componente para deixar forms em Vb semelhantes às telas do winnamp |
| Componente para colocar sua aplicação VB no Systray |
| Componente para transformar sua aplicação VB em serviço |
| Ferramentas úteis para quem usa Olap Server |
| |

![]() |
||||||||
|
|
||||||||
Por Dennes
Torres dennes@bufaloinfo.com.brDennes Torres possui as certificações MCAD, MCSD,MCSE, MCDBA e MCT. Atualmente atua Como diretor da Búfalo Informática, líder do grupo de usuários DevASPNet no Rio de Janeiro e membro da liderança dos grupos getWindows e devSQL, também do Rio de Janeiro, podendo sempre ser encontrado na lista de discussão do grupo DevASPNet (devaspnet-subscribe@yahoogrupos.com.br) bem como nas reuniões do grupo. Mantém dois blogs em http://cidadaocarioca.blogspot.com e http://br.thespoke.net/blogs/dennes/default.aspx |
|
|
|
|
| Mapa de site e navegação no ASP.NET | |
|
|
|
A criação de mapas de sites é extremamente simples no ASP.NET. Podemos simplesmente adicionar um arquivo com a extensão "sitemap" na raiz da aplicação. Utilizando o Visual Studio, o arquivo é adicionado por default com o nome "Web.sitemap".
Trata-se de um arquivo XML que deve conter o desenho de um mapa de site, seguindo um schema criado especificamente para esta finalidade (http://schemas.microsoft.com/AspNet/SiteMap-File-1.0)
O XML é uma linguagem para criar linguagens. Sempre que escrevemos algo em XML estamos na verdade criando uma nova linguagem ou usando alguma linguagem derivada do XML. Uma linguagem derivada do XML é chamada de um SCHEMA. Para que tenha nome único, esta linguagem recebe um endereço HTTP como nome. Este não é um endereço válido e em momento algum o software tentará acessá-lo. É apenas uma forma de identificar, sem duplicações ou equivocos, o nome de uma nova linguagem. A linguagem de criação de mapas de sites define tags específicas com essa finalidade |
Veja como fica o arquivo com um mapa de site :
<?xml version="1.0" encoding="utf-8" ?>
<siteMap xmlns="http://schemas.microsoft.com/AspNet/SiteMap-File-1.0" >
<siteMapNode title="Home" description="Página principal" url="home.aspx">
<siteMapNode title="A Empresa" description="Informações sobre a empresa" url="empresa.aspx">
<siteMapNode title="Filiais" description="Informações sobre filiais" url="filiais.aspx" />
</siteMapNode>
<siteMapNode title="Produtos" description="Informações sobre produtos" url="produtos.aspx">
<siteMapNode title="Eletrodomésticos" description="Eletrodomésticos" url="eletro.aspx" />
<siteMapNode title="Móveis" description="Móveis" url="moveis.aspx" />
</siteMapNode>
</siteMapNode>
</siteMap>
Como pode obsevar, os elementos chamados siteMapNode se aninham formando uma estrutura hierárquica (especialidade do XML) que demonstrará o mapa do site. Cada elemento possui atributos com as informações sobre a página que está descrevendo.
Não gosto da idéia de ter que escrever todo o mapa do site. Não existe no VS 2005 nenhum tipo de wizard para a montagem deste mapa, talvez venha a ser incluido na versão final do VS 2005, ainda não sabemos. O fato é que me adiantei um pouco e criei uma aplicação, utilizando o próprio VS 2005, para gerar o XML deste mapa do site. Veja detalhes em http://www.bufaloinfo.com.br/artigos/artigo24082005.asp
Feito o mapa do site, vamos então criar as páginas. Aproveitamos também mais um recurso do ASP.NET : As master pages. Podemos criar uma página de modelo e fazer com que todas as demais páginas do site sigam esse modelo.

SiteMapDataSource
Para expor o mapa do site devemos criar um siteMapDataSource. O siteMapDataSource é uma origem de dados - Data Source - que lê o mapa do site contido na raiz e o fornece para os webControls que desejarem na forma de uma origem de dados, podendo até mesmo gerar dataviews caso você precise manipular os dados do site pelo código, diretamente.
Não existe muito a ser configurado no siteMapDataSource. De fato, este objeto é capaz de funcionar sem configuração alguma e expõem apenas algumas propriedades para que você possa personalizar a forma como o mapa do site será exibido nos objetos de navegação
Objetos de navegação
Temos na toolbox 3 webControls que podem ser utilizados como objetos de navegação no site e cujo local ideal para serem inseridos é na master page, justamente para que sejam exibidos em todas as páginas : TreeView, SiteMapPath e Menu
Tanto o treeview como o menu podem ser usados para inúmeras outras finalidades, sendo o seu uso como objetos de navegação apenas uma delas.
O funcionamento é extremamente simples : Basta usar a smartTag para fazer a ligação do objeto com o sitemapDataSource. Pronto, teremos já mesmo em design time o TreeView e menu desenhados com o mapa do site.
Já o siteMapPath é um objeto utilizado especialmente para esta finalidade, lidar com o mapa do site, exibindo a página em que estamos atualmente e suas páginas anteriores até a página principal do site. Um site que utiliza muito esse recurso é o site da Microsoft Corp (http://www.microsoft.com)
Os 3 objetos de navegação na Master Page, em design
A treeview e o siteMapPath, em run-time. Um pouco acima o menu, que se abre ao passarmos o mouse. Com certeza você fará um design melhor que esse
Conclusão
Criar um mapa de site virou uma tarefa extremamente simples. Mais uma antiga tarefa do ambiente web que foi muito simplificada e garantirá o surgimento de sites com qualidade cada vez maior.
Veja abaixo os comentários já enviados :
| Nome : Luciane | E-Mail : lucianesmendes@hotmail.com |
| Li o tutorial mas não entendi muito bem pois não tenho experiência em programação como poderia aplicar essa solução utilizando o dreamweaver 8? Atenciosamente Luciane |
|