public void Create(string file)
        {
            var csvReader = new CsvReader(file);

            var      languages = new LanguagesQuery(LanguageShortName.Unknown, LanguageShortName.Unknown);
            Language from      = languages.GetByShortName(_from);
            Language russian   = languages.GetByShortName(LanguageShortName.Ru);

            //заголовок не учитывать
            string[] firstLine = csvReader.ReadLine();

            var popularWordsQuery = new PopularWordsQuery();

            do
            {
                string[] line = csvReader.ReadLine();
                if (line == null)
                {
                    break;
                }
                if (line.Length < 2)
                {
                    continue;
                }

                SourceWithTranslation popularWord = popularWordsQuery.GetOrCreate(CreateWordForUser(line[0], from),
                                                                                  CreateWordForUser(line[1], russian),
                                                                                  _type);
                Console.WriteLine("{0}: {1}", popularWord != null ? "Сохранено" : "Не сохранено",
                                  line.Aggregate((e1, e2) => e1 + " -> " + e2));
            } while (true);
        }
Beispiel #2
0
        public void ConvertPopularWords(PopularWordType popularWordType)
        {
            LoadLanguages();

            var popularWordsQuery = new PopularWordsQuery();
            List <SourceWithTranslation> words = popularWordsQuery.GetWordsByType(_userLanguages, popularWordType);

            var fileName = GetFileName(popularWordType);

            SaveConvertedWords(fileName, words);

            Console.WriteLine(
                "Переконвертировали популярные слова с типом {0}. Воспользовались дополнительными словарями {1} раз",
                fileName, _translator.CountExtraCalls);
        }
Beispiel #3
0
        private static IPopularWordsQuery GetPopularWordsQuery()
        {
            IPopularWordsQuery popularWordsQuery = new PopularWordsQuery();

            return(popularWordsQuery);
        }
Beispiel #4
0
        internal List <SourceWithTranslation> GetPopularWords()
        {
            var popularWordsQuery = new PopularWordsQuery();

            return(popularWordsQuery.GetWordsByType(_userLanguages, PopularWordType.Minileks));
        }