public static void MapAutomaticRoutes(this RouteCollection routes, ICompositionService comp) { //Contract.Requires( routes != null ); //Contract.Requires( comp != null ); foreach (var type in comp.GetMany <Lazy <IController, IComposableControllerMetadata> >() .Where(c => c.Metadata.AutoRoute) .Select(c => c.Value.GetType())) { routes.Add(new Route(AutoRouteFor(type), new RouteValueDictionary { { "controller", type.AssemblyQualifiedName } }, new MvcRouteHandler())); } }