Foros del Web » Programando para Internet » ASPX (.net) »

asp:Menu con SiteMap. No me muestra el menu en la pagina de inicio.

Estas en el tema de asp:Menu con SiteMap. No me muestra el menu en la pagina de inicio. en el foro de ASPX (.net) en Foros del Web. Buenos días desde España Foreros !!! Vereis, tengo un Web.Sitemap creado, y un asp:menu en mi MasterPage. El problema que tengo es que el menu, ...
  #1 (permalink)  
Antiguo 28/01/2009, 04:30
 
Fecha de Ingreso: junio-2003
Ubicación: Asturias
Mensajes: 2.429
Antigüedad: 20 años, 11 meses
Puntos: 7
asp:Menu con SiteMap. No me muestra el menu en la pagina de inicio.

Buenos días desde España Foreros !!!

Vereis, tengo un Web.Sitemap creado, y un asp:menu en mi MasterPage. El problema que tengo es que el menu, no me aparece en mi pagina default.aspx, mientras que en las demás si que aparece, aun que también ocultando la opción para esa página (Algo obvio, pero que yo no quiero que pase).

Mi idea es que el menu, aparezca siempre completo en todas las páginas, por eso puse el control menu en la MasterPage. Aun que si que quiero que no aparezcan las opciones que quiero que estén restringdas (Es decir, por roles)

Actualmente tengo lo siguiente:

Web.Sitemap
[CODE]
<siteMapNode url="#" title="" description="">
<siteMapNode url="Default.aspx" title="Default" description="Pagina de Default">
<siteMapNode url="~/CardSpace/paginaCardSpace.aspx" title="CardSpace" description="Pagina CardSpace" roles="admin" />
</siteMapNode>
<siteMapNode url="loginAcceso.aspx" title="Acceso Login" description="Login de autenticacion" />
</siteMapNode>
[CODE]



Master.Page
Código:
    <form id="form1" runat="server">
    <div>
        <asp:SiteMapDataSource ID="origenSiteMap" runat="server" />
        <asp:SiteMapPath ID="sitePath" runat="server" PathSeparator=" - ">
            <NodeStyle Font-Size="12px" />
            <PathSeparatorStyle Font-Size="12px" />
        </asp:SiteMapPath>
        
        <asp:Menu ID="mnuMenu" runat="server" Orientation="horizontal" DataSourceID="origenSiteMap">
            
        </asp:Menu>
    </div>
    <div>
        <asp:contentplaceholder id="ContentPlaceHolder1" runat="server">
            
        </asp:contentplaceholder>
    </div>
    </form>
Bien, según esto y según lo "aprendido" hasta ahora. Se supone que en mis páginas tendría que aparecer como menú: "Default" y "Acceso Login". Ocultando el nodo hijo de default, por no estar autenticado el usuario con ese rol.

Sin embargo... Entro en Default.aspx y el Menu, simplemente no aparece. Y despues... Entro en la pagina de login, y... aparece el siguiente menu:

Default >
CardSpace


¿Qué es lo que tengo mal amigos?
__________________
Charlie.
  #2 (permalink)  
Antiguo 28/01/2009, 06:13
 
Fecha de Ingreso: junio-2003
Ubicación: Asturias
Mensajes: 2.429
Antigüedad: 20 años, 11 meses
Puntos: 7
Respuesta: asp:Menu con SiteMap. No me muestra el menu en la pagina de inicio.

Bueno, ya he conseguido que según si el usuario está logeado o no, me oculte los menús. Lo que no consigo es hacer que me aparezca el menu en mi primera página, en default.aspx

¿Alguien sabe por que?

La solución al tema de la seguridad es:

Código:
1-.WebConfig

		<siteMap defaultProvider="xmlWebSiteProveedor" enabled="true">
			<providers>
				<add securityTrimmingEnabled="true" name="xmlWebSiteProveedor" siteMapFile="Web.sitemap" type="System.Web.XmlSiteMapProvider, System.Web, Version=2.0.3600.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
			</providers>
		</siteMap>



2-. SiteMap
<siteMap xmlns="http://schemas.microsoft.com/AspNet/SiteMap-File-1.0" >
    <siteMapNode url="~/">
		<siteMapNode url="~/Default.aspx" title="Inicio"  description="Pagina de Default">
			<siteMapNode url="~/CardSpace/paginaCardSpace.aspx" title="CardSpace"  description="Pagina CardSpace" roles="admin" />
			<siteMapNode url="~/InformePdf/paginaInformePdf.aspx" title="Informe Pdf"  description="Informe Pdf" roles="" />			
		</siteMapNode>
        <siteMapNode url="loginAcceso.aspx" title="Acceso Login" description="Login de autenticacion" />        
    </siteMapNode>
</siteMap>




3-. Pagina Html (Master):
        <asp:SiteMapDataSource ID="origenSiteMap" SiteMapProvider="xmlWebSiteProveedor"
                               runat="server" StartingNodeUrl="~/" />
        <asp:SiteMapPath ID="sitePath" runat="server" PathSeparator=" - ">
            <NodeStyle Font-Size="12px" />
            <PathSeparatorStyle Font-Size="12px" />
        </asp:SiteMapPath>
        
        <asp:Menu ID="mnuMenu" runat="server" Orientation="Horizontal" DataSourceID="origenSiteMap" />

En fin, espero puedan ayudarme con la otra duda, jejeje

Un abrazo amigos.
__________________
Charlie.
  #3 (permalink)  
Antiguo 28/01/2009, 13:48
 
Fecha de Ingreso: junio-2003
Ubicación: Asturias
Mensajes: 2.429
Antigüedad: 20 años, 11 meses
Puntos: 7
Respuesta: asp:Menu con SiteMap. No me muestra el menu en la pagina de inicio.

Bueno...

¿Alguien sabe si se puede hacer que en un control menu, consumido por un sitemap, que parezcan varias opciones como menu padre? Es decir.

Inicio Productos Acerca De
Producto 1
Producto 2
Producto 3

¿Saben como podría hacer para que me salieran Esos tres (Inicio, Productos, Acerca de) como elementos padres del menu?
__________________
Charlie.
  #4 (permalink)  
Antiguo 29/01/2009, 07:18
 
Fecha de Ingreso: mayo-2008
Ubicación: Chile
Mensajes: 14
Antigüedad: 16 años
Puntos: 0
Respuesta: asp:Menu con SiteMap. No me muestra el menu en la pagina de inicio.

Cita:
Iniciado por chcma Ver Mensaje
Bueno...

¿Alguien sabe si se puede hacer que en un control menu, consumido por un sitemap, que parezcan varias opciones como menu padre? Es decir.

Inicio Productos Acerca De
Producto 1
Producto 2
Producto 3

¿Saben como podría hacer para que me salieran Esos tres (Inicio, Productos, Acerca de) como elementos padres del menu?
Con esto puedes agregar los subitems a menu

Código:
Dim item As New WebControls.MenuItem
Dim subitem As New WebControls.MenuItem
item = New WebControls.MenuItem
item.Text = "Productos"
subitem.Text = "Producto 1"
subitem.NavigateUrl = "../producto1.aspx"
item.ChildItems.Add(subitem)
subitem = New WebControls.MenuItem
subitem.Text = "PRODUCTO2"
subitem.NavigateUrl = "../producto2aspx"
item.ChildItems.Add(subitem)
  #5 (permalink)  
Antiguo 29/01/2009, 07:33
 
Fecha de Ingreso: junio-2003
Ubicación: Asturias
Mensajes: 2.429
Antigüedad: 20 años, 11 meses
Puntos: 7
Respuesta: asp:Menu con SiteMap. No me muestra el menu en la pagina de inicio.

Claro... pero mi idea era tener ya el SiteMap hecho con el XML. Y asi no tener que tocar nada de código para la generación del menu.
__________________
Charlie.
  #6 (permalink)  
Antiguo 29/01/2009, 07:47
 
Fecha de Ingreso: mayo-2008
Ubicación: Chile
Mensajes: 14
Antigüedad: 16 años
Puntos: 0
Respuesta: asp:Menu con SiteMap. No me muestra el menu en la pagina de inicio.

no se si te sirva este link
http://msdn.microsoft.com/es-es/library/16yk5dby.aspx
  #7 (permalink)  
Antiguo 04/09/2009, 16:43
 
Fecha de Ingreso: septiembre-2009
Mensajes: 2
Antigüedad: 14 años, 8 meses
Puntos: 0
Respuesta: asp:Menu con SiteMap. No me muestra el menu en la pagina de inicio.

Haver si te entendi... el problema q tienes es que en la primera pagina de nombre Default.aspx no te muestra tu master page,,,y menos el contenplaceholder......eso es crrecto si es asi...


Debes de recordar que al crear un nuevo sitio web se genera una pagina de nombre Default.aspx que por defecto no tiene ningun atributo ni tampoco hereda de otra.........
al crear el Master.page creas un diseño (Padre) que las nuevas paginas podran heredar al activar el check......

Por eso siempre en el default ... se crea la ventna de LOGUEO por que este no podra heredar al master pager.....y si lo kieres forzar...pues entonces tienes que entrar al codigo del cleinte y convertirlo directamente (no recomendable)..
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 02:37.