From bac33c0f491e24bfb6872a832913041cbd7caeaa Mon Sep 17 00:00:00 2001 From: gribkovav Date: Fri, 17 Jun 2016 23:42:32 +0300 Subject: [PATCH] feature: default culture option in AppSettings --- Core/DefaultCulture.cs | 18 +++++++++++++++--- Core/Knoema.Localization.Core.csproj | 1 + 2 files changed, 16 insertions(+), 3 deletions(-) diff --git a/Core/DefaultCulture.cs b/Core/DefaultCulture.cs index 98050aa..24c4e21 100644 --- a/Core/DefaultCulture.cs +++ b/Core/DefaultCulture.cs @@ -1,13 +1,25 @@ -using System.Globalization; +using System.Configuration; +using System.Globalization; namespace Knoema.Localization { public static class DefaultCulture { - private static CultureInfo _culture = new CultureInfo(1033); + private static CultureInfo _culture; + private const string DefaultCultureSettingName = "localizerDefaultCulture"; + private static CultureInfo _cultureDefaultValue = new CultureInfo(1033); + public static CultureInfo Value { - get { return _culture; } + get + { + if (_culture == null) + { + string cultureName = ConfigurationManager.AppSettings[DefaultCultureSettingName]; + _culture = cultureName != null ? CultureInfo.GetCultureInfo(cultureName) : _cultureDefaultValue; + } + return _culture; + } } public static bool IsDefault(this string name) diff --git a/Core/Knoema.Localization.Core.csproj b/Core/Knoema.Localization.Core.csproj index 8dadca1..ffea7d9 100644 --- a/Core/Knoema.Localization.Core.csproj +++ b/Core/Knoema.Localization.Core.csproj @@ -44,6 +44,7 @@ ..\packages\AjaxMin.4.60.4609.17023\lib\net20\AjaxMin.dll +