public void Test()
 {
     using (GlobalizationContext ctx = GlobalizationContext.CreateInstance())
     {
         LanguageSet lang = new LanguageSet();
         lang.Name = "test";
         ctx.AddToLanguageSetSet(lang);
         ctx.SaveChangesWithHistory();
     }
 }
        /// <summary>
        /// Configure globalization cookies and current thread culture information.
        /// </summary>
        public void ConfigureGlobalizationContext(HttpContextBase httpContext, string regionCulture = null, string languageCulture = null, string timeZoneId = null)
        {
            var regionCookieName   = GlobalizationContext.RegionCultureCookieName;
            var languageCookieName = GlobalizationContext.LanguageCultureCookieName;
            var timeZoneCookieName = GlobalizationContext.TimeZoneIdCookieName;

            var regionCookie   = httpContext.GetCookie(regionCookieName);
            var languageCookie = httpContext.GetCookie(languageCookieName);
            var timeZoneCookie = httpContext.GetCookie(timeZoneCookieName);

            /*
             * Region culture
             */
            regionCulture = regionCulture ?? regionCookie?.Value ?? User.RegionCulture;
            httpContext.SetCookie(regionCookieName, regionCulture);

            /*
             * Language culture
             */
            languageCulture = languageCulture ?? languageCookie?.Value ?? User.LanguageCulture;
            httpContext.SetCookie(languageCookieName, languageCulture);

            /*
             * Time zone
             */
            timeZoneId = timeZoneId ?? timeZoneCookie?.Value ?? User.TimeZone;
            httpContext.SetCookie(timeZoneCookieName, timeZoneId);

            /*
             * Set globalization context.
             */
            var regionCultureInfo   = CultureInfo.GetCultureInfo(regionCulture);
            var languageCultureInfo = CultureInfo.GetCultureInfo(languageCulture);
            var timeZoneInfo        = TimeZoneInfo.FindSystemTimeZoneById(timeZoneId);

            Globalization = new GlobalizationContext(regionCultureInfo, languageCultureInfo, timeZoneInfo);

            httpContext.Items[nameof(GlobalizationContext)] = Globalization;

            /*
             * Set threads.
             */
            Thread.CurrentThread.CurrentCulture   = regionCultureInfo;
            Thread.CurrentThread.CurrentUICulture = languageCultureInfo;
        }