Pregunta

Estoy tratando de escribir mi primer propio SiteMapProvider subclase. Está destinado a poblarse dinámicamente utilizando un montón de búsqueda de bases de datos diferentes, al igual que todos los ejemplos que he encontrado en la web.

Sin embargo, hay un montón de cosas que no son bastante claras para mí. Aquí están mis dos primeras preguntas:

  • Por que es StaticSiteMapProvider utilizado en el proyecto prácticamente de todos en lugar de SiteMapProvider? Como la clase contiene el nombre "estático", tengo la impresión de que no es tan ... bueno, dinámico como lo quiero.
  • ¿Alguien puede proporcionarme un súper minimalista? SiteMapProvider ¿Subclase que poca el mapa utilizando solo datos estáticos, es decir, no hay acceso a la base de datos, etc.?
¿Fue útil?

Solución

SiteMapProvider puede ser una dinámica de totalia. Por ejemplo, puede hacer una búsqueda dinámica solo para nodos. En contraste con StaticSiteMapProvider Debes conocer toda la estructura. Entonces esto para que decidas qué elegir.

Puedes mirar el XmlSiteMapProvider, Este es un buen ejemplo del proveedor de mapas "estáticos".

public class CoolMapProvider : StaticSiteMapProvider
{
    public override SiteMapNode BuildSiteMap()
    {
        var root = new SiteMapNode(this, "test", "~/test.aspx");
        base.AddNode(root, null);

        base.AddNode(new SiteMapNode(this, "test-child", "~/test_child.aspx"), root);

        return root;
    }
}

No revisé esto, pero debería funcionar.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top