コード例 #1
0
        private void AppendNewMeaning(string newMeaning, int spID)
        {
            Word newWord = _context.Words.Where(z => z.Value.ToLower() == newMeaning.ToLower()).FirstOrDefault();

            newWord = newWord ?? new Word()
            {
                Value = newMeaning, Language = (Language)cbMiningLang.SelectedItem
            };
            if (!_wordEntry.WordMeanings.Any(z => z.Word1.Value == newMeaning)) // and speachpart
            {
                WordMeaning wm = new WordMeaning()
                {
                    Word = _word, Word1 = newWord
                };
                wm.SpeechPart_ID = spID;
                _wordEntry.WordMeanings.Add(wm);
            }
            RefreshWordTranslation();
            FillAllWordMeanings();
        }
コード例 #2
0
        private void AppendNewMeaning(string newMeaning)
        {
            CheckOrCreateNewWord();
            Word newWord = efContext.Words.Where(z => z.Value.ToLower() == newMeaning.ToLower()).FirstOrDefault();

            newWord = newWord ?? new Word()
            {
                Value = newMeaning, Language = WordMeaningLanguage
            };                                                                      //
            if (!wordEntry.Word.WordMeanings.Any(z => z.Word1.Value == newMeaning)) // and speachpart
            {
                WordMeaning wm = new WordMeaning()
                {
                    Word = WordEntry.Word, Word1 = newWord
                };

                wordEntry.Word.WordMeanings.Add(wm);
            }
            //newWord.Archived = false;
            RefreshWordTranslation();
            FillAllWordMeanings();
        }
コード例 #3
0
        private void FillTranslationAlternatives()
        {
            var wordMeanings = efContext.WordMeanings.Where(z => z.MasterWord_ID == SelectedLearningWord.Word_ID).ToList();
            //if (wordMeanings.Count() == 0)
            //{
            //    btnNext_Click(null, null);
            //    return;
            //}

            int indexTranslateWord = random.Next(0, wordMeanings.Count());

            _wordMeaningRow = wordMeanings.ElementAt(indexTranslateWord);
            TranslateWord   = _wordMeaningRow.Word1;

            Word baseWord = !(bool)CheckedReverse ? TranslateWord : SelectedLearningWord;

            //Word secondWord = direct ?_learningWord : TranslateWord;
            SelectedLearningWord = !(bool)CheckedReverse ? SelectedLearningWord : TranslateWord;
            var langId = (!(bool)CheckedReverse ? TranslateWord : SelectedLearningWord).Language_ID;
            ICollection <Word> allWordsBySpeechPart;
            var allWordsByLang = efContext.Words.Where(z => z.Language_ID == baseWord.Language_ID);

            if (!(bool)CheckedReverse)
            {
                allWordsBySpeechPart =
                    allWordsByLang.Where(z => z.WordMeanings1.Any(y => y.SpeechPart_ID == _wordMeaningRow.SpeechPart_ID)).ToList();
            }
            else
            {
                allWordsBySpeechPart =
                    allWordsByLang.Where(z => z.WordMeanings.Any(y => y.SpeechPart_ID == _wordMeaningRow.SpeechPart_ID)).ToList();
            }
            ObservableCollection <Word> chosenWords = randomAllWords(wordMeanings, allWordsBySpeechPart);

            chosenWords.Add(baseWord);
            var rndChosenWords = chosenWords.OrderBy(item => random.Next());

            ChosenWordMeanings = new ObservableCollection <Word>(rndChosenWords);
        }