コード例 #1
0
        public void EnableUI(string routeTemplate, Action <PerformanceMonitorUIConfig> configure = null)
        {
            var config = new PerformanceMonitorUIConfig(_rootUrlResolver);

            if (configure != null)
            {
                configure(config);
            }

            _httpConfig.Routes.MapHttpRoute(
                name: "codeendeavors_perfmon_statistics",
                routeTemplate: routeTemplate + "/monitor-statistics",
                defaults: new { controller = "MonitorStatistics", action = "Get" });

            _httpConfig.Routes.MapHttpRoute(
                name: "codeendeavors_perfmon_enable",
                routeTemplate: routeTemplate + "/enable",
                defaults: new { controller = "MonitorStatistics", action = "Enable" });

            _httpConfig.Routes.MapHttpRoute(
                name: "codeendeavors_perfmon_disable",
                routeTemplate: routeTemplate + "/disable",
                defaults: new { controller = "MonitorStatistics", action = "Disable" });

            _httpConfig.Routes.MapHttpRoute(
                name: "codeendeavors_perfmon_reset",
                routeTemplate: routeTemplate + "/reset",
                defaults: new { controller = "MonitorStatistics", action = "Reset" });

            _httpConfig.Routes.MapHttpRoute(
                name: "codeendeavors_perfmon_ui" + routeTemplate,
                routeTemplate: routeTemplate + "/{*assetPath}",
                defaults: null,
                constraints: new { assetPath = @".+" },
                handler: new PerformanceMonitoryUIHandler(config)
                );

            if (routeTemplate == DefaultRouteTemplate)
            {
                _httpConfig.Routes.MapHttpRoute(
                    name: "codeendeavors_perfmon_ui_shortcut",
                    routeTemplate: routeTemplate,
                    defaults: null,
                    constraints: new { uriResolution = new Http.HttpRouteDirectionConstraint(HttpRouteDirection.UriResolution) },
                    handler: new Http.RedirectHandler(_rootUrlResolver, routeTemplate + "/index"));
            }
        }
 public PerformanceMonitoryUIHandler(PerformanceMonitorUIConfig config)
 {
     _config = config;
 }