public static Localization Localization(this TRouteCollection routeCollection,
			Action<Configuration> configurationAction)
		{
			Configuration configuration = new Configuration();
			configurationAction.Invoke(configuration);

			return new Localization(configuration);
		}
        public static void RegisterRoutes(RouteCollection routes)
        {
            routes.IgnoreRoute("{resource}.axd/{*pathInfo}");


            routes.MapMvcAttributeRoutes(Localization.LocalizationDirectRouteProvider);

            ISet <string> acceptedCultures = new HashSet <string>()
            {
                "tr", "en"
            };
            string DefaultCulture = "en";
            var    configuration  = new RouteLocalization.Mvc.Setup.Configuration
            {
                DefaultCulture           = DefaultCulture,
                AcceptedCultures         = acceptedCultures,
                AttributeRouteProcessing =
                    AttributeRouteProcessing.AddAsNeutralAndDefaultCultureRoute,
                AddCultureAsRoutePrefix = true
            };

            var localization = new Localization(configuration); //create a localization variable

            localization.TranslateInitialAttributeRoutes();
            localization.ForCulture("tr")
            .ForController <HomeController>()
            .ForAction(x => x.About())
            .AddTranslation("Hakkında")
            .ForAction(x => x.Contact())
            .AddTranslation("İletişim");
            CultureSensitiveHttpModule.GetCultureFromHttpContextDelegate =
                Localization.DetectCultureFromBrowserUserLanguages(acceptedCultures,
                                                                   DefaultCulture);


            routes.MapRoute(
                name: "Language",
                url: "{controller}/{action}",
                defaults: new { controller = "Language", action = "ChangeLanguage" }
                );
        }
		public static Localization Localization(this TRouteCollection routeCollection, Configuration configuration)
		{
			return new Localization(configuration);
		}