title: MVC SiteMapProvider Breadcrumbs change ">" to something else
body: <p>The way the MVC SiteMapProvider lays out breadcrumbs they are displayed like</p>
  
  <p>Home > Details > Manage Project</p>
  
  <p>What do I do if I want to change ">" to a different symbol (or in my specific case an icon within twitter bootsrap)?</p>
  
  <p>At the moment I am calling the breadcrumbs using @Html.MvcSiteMap().SiteMapPath() </p>
  
  <p>I went into Views/Shared/DisplayTemplates/SiteMapPathHelperModel and tried changing</p>
  
  <pre><code>&lt;text&gt; &amp;gt; &lt;/text&gt;
  </code></pre>
  
  <p>to:</p>
  
  <pre><code>&lt;text&gt;&lt;i class="icon-chevron-right"&gt;&lt;/i&gt;&lt;/text&gt;
  </code></pre>
  
  <p>but the greater then symbol stayed. I received no errors. </p>
  
  <p>Here is some potentially relevant code from the partial view that uses the bread crumbs:</p>
  
  <pre><code>@if(Request.IsAuthenticated) 
  {
  
      &lt;div class="breadcrumb trail"&gt;
          &lt;i class="icon-home"&gt;&lt;/i&gt;
          @Html.MvcSiteMap().SiteMapPath()
      &lt;/div&gt;            
      &lt;p align ="right"&gt;   
      &lt;i class="icon-user"&gt;&lt;/i&gt; &lt;text&gt;Welcome &lt;strong&gt;@User.Identity.Name&lt;/strong&gt;!
          [ @Html.ActionLink("Log Off", "LogOff", "Account") ]&lt;/text&gt;
      &lt;/p&gt;
  }
  else
  {
      @* display nothing*@
  }
  </code></pre>
  
  <p>Here is the sitemap being declared in the web.config:</p>
  
  <pre><code>&lt;siteMap defaultProvider="MvcSiteMapProvider" enabled="true"&gt;
    &lt;providers&gt;
      &lt;clear /&gt;
      &lt;add name="MvcSiteMapProvider" type="MvcSiteMapProvider.DefaultSiteMapProvider, MvcSiteMapProvider" siteMapFile="~/Mvc.Sitemap" securityTrimmingEnabled="true" cacheDuration="5" enableLocalization="true" scanAssembliesForSiteMapNodes="true" includeAssembliesForScan="" excludeAssembliesForScan="" attributesToIgnore="visibility" nodeKeyGenerator="MvcSiteMapProvider.DefaultNodeKeyGenerator, MvcSiteMapProvider" controllerTypeResolver="MvcSiteMapProvider.DefaultControllerTypeResolver, MvcSiteMapProvider" actionMethodParameterResolver="MvcSiteMapProvider.DefaultActionMethodParameterResolver, MvcSiteMapProvider" aclModule="MvcSiteMapProvider.DefaultAclModule, MvcSiteMapProvider" siteMapNodeUrlResolver="MvcSiteMapProvider.DefaultSiteMapNodeUrlResolver, MvcSiteMapProvider" siteMapNodeVisibilityProvider="MvcSiteMapProvider.DefaultSiteMapNodeVisibilityProvider, MvcSiteMapProvider" siteMapProviderEventHandler="MvcSiteMapProvider.DefaultSiteMapProviderEventHandler, MvcSiteMapProvider" /&gt;
    &lt;/providers&gt;
  &lt;/siteMap&gt;
  </code></pre>
  
  <p>Code within the SiteMapPathHelperModel.cshtml template:</p>
  
  <pre><code>@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 =&gt; node);
  
      if (node != Model.Last()) {
         @*Original Symbol*@
         @* &lt;text&gt; &amp;gt; &lt;/text&gt; *@
         &lt;text&gt; &amp;rsaquo; &lt;/text&gt;
      }
  }
  </code></pre>
  
  <p>Am I totally off in the way I am going about doing this, or am I just missing something? </p>
  
  <p><strong>UPDATE</strong> You can pass a template into the SiteMapPath method as a string. Attempting this within the partial view that calls this method, I pass it like so:</p>
  
  <pre><code>@Html.MvcSiteMap().SiteMapPath("SiteMapPathHelperModel")
  </code></pre>
  
  <p>I have removed the acsx file from the project to keep it from going here by default (I want it to use the cshmtl template). I have changed the template code to use a different symbol and have rebuilt, saved all, then ran the project.</p>
  
  <p>It still uses the default ">" symbol despite all of this.</p>