title: Does MvcSiteMapProvider support "Sql Server" session state?
body: <p>I am trying to use the MvcSiteMapProvider in an application that is configured with <em>SqlServer</em> session state mode.
  However, I get an exception the moment I call the <em>RegisterRoutes</em> method of <em>XmlSiteMapController</em> class, like this:</p>
  
  <pre><code>public static void RegisterRoutes(RouteCollection routes)
  {
      // ...
      routes.MapRoute(
          "Default",
          "{controller}/{action}/{id}",
          new { controller = "Home", action = "Index", id = "" }
          );
  
      // Add our route registration for MvcSiteMapProvider sitemaps
      MvcSiteMapProvider.Web.Mvc.XmlSiteMapController.RegisterRoutes(routes);
  }
  </code></pre>
  
  <p>Then I get an exception saying </p>
  
  <blockquote>
    <p><em>Type 'System.Web.Routing.RouteValueDictionary' in Assembly 'System.Web, Version=4.0.0.0, Culture=neutral,
    PublicKeyToken=b03f5f7f11d50a3a' is not marked as serializable.</em></p>
  </blockquote>
  
  <p>This makes me think MvcSiteMapProvider does not support SqlServer session state mode. Does it?</p>
  
  <p>Thanks!</p>