Como configurar um SiteMap em páginas que estão utilizando o URLRewriting, vou descrever uma das formas que você pode utilizar em sua solução?
Primeiramente, para quem não conhece o URLRewriting nada mais é que reescrever as url de forma mais amigavel (em resumo) ocultado ou alterando alguns detalhes, para saber mais sobre URLRewriting no asp.net consulte ->
http://msdn.microsoft.com/en-us/library/ms972974.aspx.
Veja um cenário abaixo:
A solução que utilizo é customizar o SiteMapPath acrescentando um e um no modelo, preenchendo suas propriedades de URL e Texto dinamicamente. Veja no exemplo abaixo, repare que estou usando o Eval(), dentro deste você pode fazer chamadas a métodos internos e pegar os valores como desejar (usando reflection, constantes, etc).
Exemplo:
<Asp:SiteMapPath ID = "CustomSiteMapPath" runat = "server"> <NodeTemplate> <Asp: HyperLink ID="hypLink" runat="server" Text ='<%# Eval("titulo")%>' NavigateUrl ='<%# Eval("url")%>'/> </NodeTemplate> <CurrentNodeTemplate> <Asp:Literal ID ="litCurrentNode" runat ="server" Text =' <%# Eval("titulo")%>'/> </CurrentNodeTemplate> </Asp: SiteMapPath> |
Espero que isso seja util;...
Abraço,