コード例 #1
0
 public static string GetLanguageFilesMap(this AbpLocalizationOptions localizationOptions, string packageName,
                                          string language)
 {
     return(localizationOptions.LanguageFilesMap.TryGetValue(packageName, out var maps)
         ? maps.FirstOrDefault(x => x.Name == language)?.Value ?? language
         : language);
 }
コード例 #2
0
        public static AbpLocalizationOptions AddLanguagesMapOrUpdate(this AbpLocalizationOptions localizationOptions,
                                                                     string packageName, params NameValue[] maps)
        {
            foreach (var map in maps)
            {
                AddOrUpdate(localizationOptions.LanguagesMap, packageName, map);
            }

            return(localizationOptions);
        }
コード例 #3
0
        //TODO: It's better to use decorator pattern for IStringLocalizerFactory instead of getting ResourceManagerStringLocalizerFactory as a dependency.
        public AbpStringLocalizerFactory(
            ResourceManagerStringLocalizerFactory innerFactory,
            IOptions <AbpLocalizationOptions> abpLocalizationOptions,
            IServiceProvider serviceProvider)
        {
            _innerFactory           = innerFactory;
            _serviceProvider        = serviceProvider;
            _abpLocalizationOptions = abpLocalizationOptions.Value;

            _localizerCache = new ConcurrentDictionary <Type, AbpDictionaryBasedStringLocalizer>();
        }
コード例 #4
0
 public static string GetCurrentUICultureLanguageFilesMap(this AbpLocalizationOptions localizationOptions, string packageName)
 {
     return(GetLanguageFilesMap(localizationOptions, packageName, CultureInfo.CurrentUICulture.Name));
 }
コード例 #5
0
 public DefaultLanguageProvider(IOptions <AbpLocalizationOptions> options)
 {
     Options = options.Value;
 }