title: Problems with using ImageUrl DynamicNodeProviderBase
body: <p>Apparently, the title takes the value of ImageUrl</p>
  
  <p>In my DynamicNodeProviderBase  class configure both the <code>Title</code> and the <code>ImageUrl</code></p>
  
  <p><strong>DynamicNodeProviderBase</strong></p>
  
  <pre><code>const string keyFormated = "Subsidiary_{0}";
  
  // Create a node for each subsidiary
  foreach (var subsidiary in listDB.ToList())
  {
      var node = new DynamicNode
                     {
                         Title = subsidiary.District,
                         Description = subsidiary.Title,
                         ImageUrl = Path.Combine(string.Format(Constants.RelativePathSubsidiary, subsidiary.ID.ToString().ToLower())),
                         Key = string.Format(keyFormated, subsidiary.District)
                     };
      node.RouteValues.Add("id", subsidiary.ID);
      node.Attributes.Add("LargeIconFileName", subsidiary.LargeIconFileName);
      node.Attributes.Add("MediumIconFileName", subsidiary.MediumIconFileName);
      node.Attributes.Add("SmallIconFileName", subsidiary.SmallIconFileName);
      returnValue.Add(node);
  }
  
  // Return 
  return returnValue;
  </code></pre>
  
  <p><strong>View</strong></p>
  
  <p>In my view, call the helper to generate the menu of my page.
  This menu is customized by a DisplayTemplates</p>
  
  <p><code>@Html.MvcSiteMap().Menu("sitemap-menu", true, true, false)</code></p>
  
  <p><strong>DisplayTemplates</strong></p>
  
  <p>Basically have a DisplayTemplates for the <code>MenuHelperModel</code> and one for the <code>SiteMapNodeModel</code>.
  As <code>MenuHelperModel</code> is pretty simple (just call the helper <code>@DisplayFor</code> passing my custom template) will not put his code here.</p>
  
  <p>The following code <code>SiteMapNodeModel</code></p>
  
  <pre><code>@model SiteMapNodeModel
  @{
  
      object upper;
      string title = Model.Title;
      var imgUrl = Path.Combine(Model.ImageUrl, "Icons");
      string iconFilename;
      if (ViewData.TryGetValue("upper", out upper))
      {
          title = title.ToUpperInvariant();
      }
  
      if (Model.MetaAttributes.TryGetValue("SmallIconFileName", out iconFilename)
          || Model.MetaAttributes.TryGetValue("MediumIconFileName", out iconFilename)
          || Model.MetaAttributes.TryGetValue("LargeIconFileName", out iconFilename))
      {
          imgUrl = Path.Combine(imgUrl, iconFilename);
      }
  }
  
  @if (Model.IsCurrentNode &amp;&amp; Model.SourceMetadata["HtmlHelper"].ToString() != "MvcSiteMapProvider.Web.Html.MenuHelper")
  { 
      &lt;text&gt;@title&lt;/text&gt;
  }
  else if (Model.IsClickable &amp;&amp; Model.ImageUrl != null)
  { 
      &lt;a href="@Model.Url" title="@Model.Title"&gt;
          &lt;img src="@Url.Content(imgUrl)" alt="@Model.Title"/&gt;
          &lt;span&gt;@title&lt;/span&gt;
      &lt;/a&gt;
  }
  else
  { 
      &lt;text&gt;@title&lt;/text&gt;
  }
  </code></pre>
  
  <p>But the values ​​are incorrect (or are exchanged).
  See a picture of the debug:</p>
  
  <p><strong>Debug</strong></p>
  
  <p><img src="https://i.imgur.com/J5qwb.png" alt="Debug mode"><br>
  See <a href="https://i.imgur.com/J5qwb.png" rel="nofollow noreferrer">full image here</a></p>
  
  <p>NOTE: The description in red is wrong: The correct is: The Title value should be in ImageUrl property!</p>
  
  <h2>Question</h2>
  
  <p>Why the value of the <code>ImageUrl</code> property is Title and why <code>TItle</code> is empty?</p>