示例#1
0
 public Language(string code)
 {
     Code        = code;
     Description = null;
     Inherit     = null;
     Collection  = new TranslationStringsCollection();
 }
示例#2
0
        private TranslationStringsCollection LoadLanguageFile(Language lang, string enFile)
        {
            var prefix   = Path.GetFileName(enFile.Substring(0, enFile.Length - 8));
            var langFile = $"{prefix}.{lang.Code}.json";

            var appLang  = TranslationStringsCatalog.LoadLanguageFromFile(Path.Combine(_appTranslationsFolder, langFile));
            var userLang = TranslationStringsCatalog.LoadLanguageFromFile(Path.Combine(_userTranslationsFolder, langFile));

            var tsc = new TranslationStringsCollection();

            if (appLang != null)
            {
                foreach (var kv in appLang.Collection.Settings)
                {
                    tsc.Settings[kv.Key] = kv.Value;
                }
                foreach (var kv in appLang.Collection.Strings)
                {
                    tsc.Strings[kv.Key] = kv.Value;
                }
            }
            if (userLang != null)
            {
                foreach (var kv in userLang.Collection.Settings)
                {
                    tsc.Settings[kv.Key] = kv.Value;
                }
                foreach (var kv in userLang.Collection.Strings)
                {
                    tsc.Strings[kv.Key] = kv.Value;
                }
            }
            return(tsc);
        }