Пример #1
0
 public SmartTypeTranslator(ETypeLanguage language, ETypeUnit unit, string searchPattern, string value)
 {
     Language      = language;
     Unit          = unit;
     SearchPattern = searchPattern;
     Value         = value;
 }
        public static string GetType(string value, ETypeLanguage originalLanguage, ETypeLanguage outputLanguage)
        {
            var unit = ETypeUnit.Undefined;

            //Find the unit int the Original Language
            foreach (SmartTypeTranslator translator in Translators.Where(x => x.Language == originalLanguage))
            {
                if (Regex.IsMatch(value, translator.SearchPattern, RegexOptions.IgnoreCase))
                {
                    unit = translator.Unit;
                }
            }

            //Find the translation value in the other languages
            var type = Translators.Where(x => x.Language == outputLanguage && x.Unit == unit).FirstOrDefault();

            if (type != null)
            {
                return(type.Value);
            }
            return(null);
        }