MvcSiteMapProvider No Separetor

426 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 best solutions below

0
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
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/