Understands how to route and respond to MiniProfiler UI URLS.
Inheritance: IRouteHandler, IHttpHandler, IRequiresSessionState
        /// <summary>
        /// Usually called internally, sometimes you may clear the routes during the apps lifecycle, if you do that call this to bring back mini profiler.
        /// </summary>
        public static void RegisterRoutes()
        {
            var routes  = RouteTable.Routes;
            var handler = new MiniProfilerHandler();
            var prefix  = MiniProfiler.Settings.RouteBasePath.Replace("~/", string.Empty).EnsureTrailingSlash();

            using (routes.GetWriteLock())
            {
                var route = new Route(prefix + "{filename}", handler)
                {
                    // we have to specify these, so no MVC route helpers will match, e.g. @Html.ActionLink("Home", "Index", "Home")
                    Defaults    = new RouteValueDictionary(new { controller = "MiniProfilerHandler", action = "ProcessRequest" }),
                    Constraints = new RouteValueDictionary(new { controller = "MiniProfilerHandler", action = "ProcessRequest" })
                };

                // put our routes at the beginning, like a boss
                routes.Insert(0, route);
            }
        }
        /// <summary>
        /// Usually called internally, sometimes you may clear the routes during the apps lifecycle, if you do that call this to bring back mini profiler.
        /// </summary>
        public static void RegisterRoutes()
        {
            var routes = RouteTable.Routes;
            var handler = new MiniProfilerHandler();
            var prefix = MiniProfiler.Settings.RouteBasePath.Replace("~/", string.Empty).EnsureTrailingSlash();

            using (routes.GetWriteLock())
            {
                var route = new Route(prefix + "{filename}", handler)
                                {
                                    // we have to specify these, so no MVC route helpers will match, e.g. @Html.ActionLink("Home", "Index", "Home")
                                    Defaults = new RouteValueDictionary(new { controller = "MiniProfilerHandler", action = "ProcessRequest" }),
                                    Constraints = new RouteValueDictionary(new { controller = "MiniProfilerHandler", action = "ProcessRequest" })
                                };

                // put our routes at the beginning, like a boss
                routes.Insert(0, route);
            }
        }
        internal static void RegisterRoutes()
        {
            var urls = new[]
            {
                "mini-profiler-jquery.1.6.2.js",
                "mini-profiler-jquery.tmpl.beta1.js",
                "mini-profiler-includes.js",
                "mini-profiler-includes.css",
                "mini-profiler-includes.tmpl",
                "mini-profiler-results"
            };
            var routes = RouteTable.Routes;
            var handler = new MiniProfilerHandler();
            var prefix = (MiniProfiler.Settings.RouteBasePath ?? "").Replace("~/", "").EnsureTrailingSlash();

            using (routes.GetWriteLock())
            {
                foreach (var url in urls)
                {
                    var route = new Route(prefix + url, handler)
                    {
                        // we have to specify these, so no MVC route helpers will match, e.g. @Html.ActionLink("Home", "Index", "Home")
                        Defaults = new RouteValueDictionary(new { controller = "MiniProfilerHandler", action = "ProcessRequest" })
                    };

                    // put our routes at the beginning, like a boss
                    routes.Insert(0, route);
                }
            }
        }