Je možné použití ASP.NET stránek generovat strouhanku?

hlasů
3

Chci ASP.NET webu mít jednoduché menu řetězec aka řízek. Vytvořil jsem soubor Sitemap se všemi požadovanými prvky a registrována do Web.config. Například:

<siteMap>
    <siteMapNode url=Default.aspx title=Home >
        <siteMapNode url=hosting/Default.aspx title=Hosting />
        <siteMapNode url=software/Default.aspx title=Software>
            <siteMapNode url=firefox/Default.aspx title=Firefox>
                <siteMapNode url=Download.aspx title=Download />
                <siteMapNode url=Support.aspx title=Support />
            </siteMapNode>
        </siteMapNode>
    </siteMapNode>
</siteMap>

A vytvořil ovládání umístěného na vzorové stránce. Tady je to generování kódu menu:

protected void Control_Load(Object sender, EventArgs e)
{
    string path = String.Empty;
    StringCollection list = new StringCollection();

    foreach (string str in Request.Url.Segments)
    {
        path += str;
        string link = String.Format(<a href=\{0}://{1}{2}\>{3}</a>, Request.Url.Scheme, Request.Url.Authority, path, this.names[str]);
        list.Add(link);
    }

    foreach (string str in list)
    {
        menu += String.Concat(str, SeparatorLine);
    }
    menu = menu.Remove(menu.LastIndexOf(SeparatorLine));
}

Ale používá StringDictionary jako {{ /, Home}, { hosting /, hosting}, { software /, Software}} ..

Jak mohu použít dotaz Sitemap místo něj? Nebo možná něco jiného, ​​ne Mapa stránek, ale předem vymyslel.

Položena 16/02/2009 v 22:23
zdroj uživatelem
V jiných jazycích...                            


3 odpovědí

hlasů
9

SiteMapPath Control ASP.NET

<asp:SiteMapPath ID="SiteMapPath1" Runat="server" />
Odpovězeno 16/02/2009 v 22:26
zdroj uživatelem

hlasů
5

Můžete použít SiteMapPath ovládání (musí být v kategorii Navigace z panelu nástrojů). Zkontrolujte, zda tato stránka pro cvičení.

Odpovězeno 16/02/2009 v 22:26
zdroj uživatelem

hlasů
1

Stačí nastavit vlastnost SiteMapProvider poskytovateli pro mapa stránek, kterou chcete použít pro strouhankou a budete nastavit. Obvykle jsem se umístit SiteMapPath uvnitř div a nastavit CSS na div ke stylu strouhanku.

Jeden gotcha dávat pozor ačkoli. Máte-li potlačit jakékoliv kořenové uzly v souboru Sitemap, budou nadále zobrazovat ve vašich strouhance. Jsem běžet do toho, že se snaží použít stejný Sitemap pro strouhankou a za SiteMapDataSource o stromu, kde jsem chtěl nevykazují počáteční uzel.

Hodně štěstí!

Odpovězeno 18/05/2009 v 13:03
zdroj uživatelem

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more