private void btnOK_Click(object sender, EventArgs e)
        {
            var userRank = numUserVocabularyRank.Value;
            //DbOperator dbOperator= DbOperator.Instance;
            //var words = dbOperator.FindAll<VocabularyRank>(v => v.RankValue >= numUserVocabularyRank.Value);
            var     words      = InnerDictionaryHelper.GetAllVocabularyRanks();
            Service service    = new Service();
            var     vocabulary = new List <Vocabulary>();

            foreach (var vocabularyRank in words)
            {
                if (vocabularyRank.Value >= userRank)
                {
                    vocabulary.Add(new Vocabulary()
                    {
                        Word = vocabularyRank.Key, IsKnown = true
                    });
                }
            }
            service.SaveUserVocabulary(vocabulary, "柯林斯词频分级");
            logger.Debug("柯林斯词频分级保存成功");
            MessageBox.Show("用户词频设置保存成功");
            //RegistryHelper.WTRegedit("Used","Yes");
            DialogResult = DialogResult.OK;
            //this.Close();
        }
Exemplo n.º 2
0
 private bool IsEasyWord(string word)
 {
     easyWord = InnerDictionaryHelper.GetAllEasyWords();
     //if(easyWord==null)
     //easyWord = dbOperator.GetAll<EasyWord>().Select(e => e.Word).ToList();
     return(easyWord.Contains(word));
 }
 /// <summary>
 /// 判断是否是英文名,首字母大写,而且在英文名列表中的就是英文名
 /// </summary>
 /// <param name="word"></param>
 /// <returns></returns>
 private bool IsEnglishName(string word)
 {
     if (word[0] >= 'A' && word[0] <= 'Z')
     {
         var names = InnerDictionaryHelper.GetAllEnglishNames();
         return(names.Contains(word));
     }
     return(false);
 }
        private bool IsEasyWord(string word)
        {
            if (EasyWordPart.Contains(word))
            {
                return(true);
            }
            var easyWord = InnerDictionaryHelper.GetAllEasyWords();

            return(easyWord.Contains(word));
        }
Exemplo n.º 5
0
        //private DbOperator dbOperator =  DbOperator.Instance;
        //private DictionaryService dictionaryService;

        //public DictionaryService DictionaryService
        //{
        //    set { dictionaryService = value; }
        //}

        //public EnglishWordService()
        //{
        //    //this.dictionaryService = Global.DictionaryService;
        //}

        ////private IList<VocabularyRank> rankData;

        //private bool IsInRankTable(string word)
        //{
        //    return GetRank(word) > 3;
        //}

        //private int GetRank(string word)
        //{
        //    var rankData = InnerDictionaryHelper.GetAllVocabularyRanks();
        //    if (rankData.ContainsKey(word))
        //    {
        //        return rankData[word];
        //    }
        //    return -1;
        //    //if (rankData == null)
        //    //{
        //    //    rankData = dbOperator.GetAll<VocabularyRank>();
        //    //}
        //    //var x = rankData.SingleOrDefault(r => r.Word == word);
        //    //if (x == null)
        //    //{
        //    //    return -1;
        //    //}
        //    //return x.RankValue;
        //}
        /// <summary>
        /// 传入一个单词的原型,获得其复数、进行时、过去式等形式,找不到则返回0元素的集合
        /// </summary>
        /// <param name="word"></param>
        /// <returns></returns>
        public static IList <string> GetWordAllFormat(string word)
        {
            var wordFormatMaps = InnerDictionaryHelper.GetAllWordFormatMaps();

            if (wordFormatMaps.ContainsKey(word))
            {
                return(wordFormatMaps[word]);
            }
            return(new List <string>());
        }
 /// <summary>
 /// 获得不规则动词的Mapping,返回不规则动词的原型
 /// </summary>
 /// <param name="word"></param>
 /// <returns></returns>
 private string GetOriginalWordFromDb(string word)
 {
     OriginalWordMaps = InnerDictionaryHelper.GetAllWordOriginalMaps();
     //if (OriginalWordMaps == null)
     //{
     //    OriginalWordMaps = new Dictionary<string, string>();
     //    var list = dbOperator.GetAll<WordOriginalMap>();
     //    foreach (var wordOriginalMap in list)
     //    {
     //        OriginalWordMaps.Add(wordOriginalMap.Word, wordOriginalMap.OriginalWord);
     //    }
     //}
     if (OriginalWordMaps.ContainsKey(word))
     {
         return(OriginalWordMaps[word]);
     }
     return(null);
 }
        private int GetRank(string word)
        {
            var rankData = InnerDictionaryHelper.GetAllVocabularyRanks();

            if (rankData.ContainsKey(word))
            {
                return(rankData[word]);
            }
            return(-1);
            //if (rankData == null)
            //{
            //    rankData = dbOperator.GetAll<VocabularyRank>();
            //}
            //var x = rankData.SingleOrDefault(r => r.Word == word);
            //if (x == null)
            //{
            //    return -1;
            //}
            //return x.RankValue;
        }
Exemplo n.º 8
0
        //private IList<VocabularyRank> vocabularyRanks;
        //private VocabularyRank GetVocabularyRank(string word)
        //{
        //  if (vocabularyRanks == null||vocabularyRanks.Count==0)
        //    {
        //        vocabularyRanks = dbOperator.GetAll<VocabularyRank>();
        //    }
        //    return (vocabularyRanks.Where(v => v.Word == word).FirstOrDefault());
        //}
        private string CalcAndGetWordAndMean(string word)
        {
            var vocabulary = GetUserVocabulary(word);

            if (vocabulary != null)
            {
                if (vocabulary.KnownStatus == KnownStatus.Known)
                {
                    //用户认识这个词,那么就不用替换
                    return("");
                }
                else //用户的生词表中有这个词,
                {
                    return(word);
                }
            }
            //用户词汇中没有这个词,那么就查询词频分级表,看有没有分级信息
            var rankData = InnerDictionaryHelper.GetAllVocabularyRanks();

            //var rank = GetVocabularyRank(word);
            if (!rankData.ContainsKey(word))
            {
                return(word);
            }
            var rank = rankData[word];


            if (rank < 4)
            {
                return(word);
            }
            else
            {
                return("");
            }
        }