MvcSiteMapProvider No Separetor

412 views Asked by At

I don't want the MvcSiteMapProvider to display the ">" separtor betweent the breadcrumbs.

Example: Home > Contact What I want: Home Contact (a separetor between the breadcrumbs is added with CSS).

I dodn't found any property called "separetor" to set this in the docu (https://github.com/maartenba/MvcSiteMapProvider/wiki).

2

There are 2 answers

0
NightOwl888 On BEST ANSWER

MvcSiteMapProvider uses templated HTML helpers. You can edit the templates any way you want to change the output HTML to meet your needs (including the separator character).

For the SiteMapPath, simply edit the template at /Views/Shared/DisplayTemplates/SiteMapPathHelperModel.cshtml as follows.

Default

@model MvcSiteMapProvider.Web.Html.Models.SiteMapPathHelperModel
@using System.Web.Mvc.Html
@using System.Linq
@using MvcSiteMapProvider.Web.Html.Models

@foreach (var node in Model) { 
    @Html.DisplayFor(m => node);

    if (node != Model.Last()) {
        <text> &gt; </text>
    }
}

Edit

@model MvcSiteMapProvider.Web.Html.Models.SiteMapPathHelperModel
@using System.Web.Mvc.Html
@using System.Linq
@using MvcSiteMapProvider.Web.Html.Models

@foreach (var node in Model) { 
    @Html.DisplayFor(m => node);

    if (node != Model.Last()) {
        <text> </text>
    }
}
0
pool pro On

Bootstrap has a separator for this. <span class="divider">

Check out this link.

https://joeylicc.wordpress.com/2013/07/08/asp-net-mvc-sitemappath-using-site-map-provider-bootstrap-breadcrumbs/