コード例 #1
0
        private void button10_Click(object sender, EventArgs e)
        {
            var entities = new gredbEntities();
            var parser = new ParserHelper(entities);

            parser.OnLogMessage += OnParserOnLogMessage;

            workerThread = new Thread(parser.ParseGoogleBengali) { IsBackground = true };
            workerThread.Start();
        }
コード例 #2
0
        private void buttonCollect_Click(object sender, EventArgs e)
        {
            var entities = new gredbEntities();

            long listNameId = -1;
            if (comboBoxList.Text.Trim().Length > 0)
            {
                var list = entities.ListNames.Where(o => o.Name.ToLower().Equals(comboBoxList.Text.Trim().ToLower())).Select(o => o).FirstOrDefault();
                if (list == null)
                {

                    ListName listName = new ListName();
                    listName.Name = comboBoxList.Text.Trim().ToLower();
                    entities.AddToListNames(listName);
                    entities.SaveChanges();

                    listNameId = listName.Id;
                }
                else
                {
                    listNameId = list.Id;
                }
            }
            else
            {
                listNameId = Convert.ToInt64(comboBoxList.SelectedValue);
            }

            String strWord = textBoxWord.Text.Trim().ToLower();
            ListName ln = (from n in entities.ListNames
                           where n.Id == listNameId
                           select n).FirstOrDefault();

            try
            {
                GreWord word;
                word = (from w in entities.GreWords
                        where w.Word.ToLower() == strWord
                        select w).FirstOrDefault();

                if (word == null)
                {
                    word = new GreWord()
                    {
                        Word = strWord,
                    };
                    entities.AddToGreWords(word);
                    entities.SaveChanges();
                }

                ListedWord lw = (from w in entities.ListedWords
                                 where w.ListName.Id == ln.Id && w.GreWord.Word == word.Word
                                 select w).FirstOrDefault();

                if (lw == null)
                {
                    lw = new ListedWord()
                    {
                        GreWord = word,
                        ListName = ln
                    };
                    entities.AddToListedWords(lw);
                    entities.SaveChanges();
                }
            }
            catch (Exception exp)
            {
                MessageBox.Show(exp.Message);
            }

            ParserHelper parserHelper = new ParserHelper(entities);
            parserHelper.OnLogMessage += (sender2, person) => this.Invoke((MethodInvoker)(() => textBoxInfo.AppendText(person + "\r\n")));

            parserHelper.WordToFetch = strWord;
            var workerThread = new Thread(parserHelper.FetchAndParseSingleWord) {IsBackground = true};
            workerThread.Start();
        }
コード例 #3
0
 private void LoadListNames()
 {
     var entities = new gredbEntities();
     comboBoxList.DataSource = (from w in entities.ListNames select w).ToList();
 }
コード例 #4
0
 public ParserHelper(gredbEntities db)
 {
     _entities = db;
 }
コード例 #5
0
        private void button1_Click(object sender, EventArgs e)
        {
            long listNameId = -1;
            var entities = new gredbEntities();

            var list = entities.ListNames.Where(o => o.Name.ToLower().Equals(comboBoxList.Text.Trim().ToLower())).Select(o => o).FirstOrDefault();
            if (list == null)
            {

                ListName listName = new ListName { Name = comboBoxList.Text.Trim() };
                entities.AddToListNames(listName);
                entities.SaveChanges();

                listNameId = listName.Id;
            }
            else
            {
                listNameId = list.Id;
            }

            String str = Regex.Replace(textBox1.Text, "([0-9\\.]+|<.+?>)", "");
            Regex regex = new Regex("([^\\s]+)");

            ListName ln = (from n in entities.ListNames
                           where n.Id == listNameId
                           select n).FirstOrDefault();

            try
            {
                MatchCollection mc = regex.Matches(str);

                foreach (Match m in mc)
                {
                    try
                    {
                        GreWord word = (from w in entities.GreWords
                                        where w.Word.ToLower() == m.Value.ToLower()
                                        select w).FirstOrDefault();

                        if (word == null)
                        {
                            word = new GreWord()
                            {
                                Word = m.Value.ToLower(),
                            };
                            entities.AddToGreWords(word);
                            entities.SaveChanges();
                        }

                        ListedWord lw = (from w in entities.ListedWords
                                         where w.ListName.Id == ln.Id && w.GreWord.Word == word.Word
                                         select w).FirstOrDefault();

                        if (lw == null)
                        {
                            lw = new ListedWord()
                            {
                                GreWord = word,
                                ListName = ln
                            };
                            entities.AddToListedWords(lw);
                            entities.SaveChanges();
                        }
                    }
                    catch (Exception exp)
                    {
                        MessageBox.Show(exp.Message);
                    }
                }
                entities.Connection.Close();
            }
            catch (Exception exp)
            {
            }
        }
コード例 #6
0
 private void MnemonicsCollector_Load(object sender, EventArgs e)
 {
     var entities = new gredbEntities();
     comboBoxList.DataSource = (from w in entities.ListNames select w).ToList();
 }
コード例 #7
0
        String getMnemonics(GreWord gw)
        {
            var entities = new gredbEntities();
            var parser = new ParserHelper(entities);

            String mnemonics = "";

            List<FeaturedMnemonic> mSelected = (from w in entities.FeaturedMnemonics
                                                where w.GreWord.Word == gw.Word
                                                select w).ToList();
            foreach (FeaturedMnemonic ms in mSelected)
                mnemonics += "##:" + ms.Mnemonic + ", ";

            List<BasicMnemonic> mAll = (from w in entities.BasicMnemonics
                                        where w.GreWord.Word == gw.Word
                                        select w).ToList();
            foreach (BasicMnemonic ms in mAll)
                mnemonics += "#" + ms.Helpful + "," + ms.NotHelpful + ":" + ms.Mnemonic + ", ";

            mnemonics = Clean(mnemonics, @"\(Tag.+?\)");
            mnemonics = Clean(mnemonics);

            return mnemonics;
        }
コード例 #8
0
 private void button2_Click(object sender, EventArgs e)
 {
     var entities = new gredbEntities();
     entities.RemoveDuplicateBengaliWord();
 }
コード例 #9
0
        private void buttonSynonymsNet_Click(object sender, EventArgs e)
        {
            var entities = new gredbEntities();
            var parser = new ParserHelper(entities);

            parser.OnLogMessage += OnParserOnLogMessage;

            workerThread = new Thread(parser.FetchSynonymsNet) { IsBackground = true };
            workerThread.Start();
        }
コード例 #10
0
        private void buttonMnemonicDictionarySynonym_Click(object sender, EventArgs e)
        {
            var entities = new gredbEntities();
            var parser = new ParserHelper(entities);

            parser.OnLogMessage += delegate(object sender2, string person)
            {
                this.Invoke((MethodInvoker)delegate
                {
                    textBox2.AppendText(person + "\r\n");
                });
            };

            workerThread = new Thread(new ThreadStart(parser.ParseMnemonicDictionarySynonym));
            workerThread.IsBackground = true;
            workerThread.Start();
        }
コード例 #11
0
        private void button8_Click(object sender, EventArgs e)
        {
            var entities = new gredbEntities();

            GreWord[] greWords = (from w in entities.GreWords
                                  where w.Hardness > 3
                                  orderby w.Hardness descending
                                  select w).ToArray();

            String strGre = greWords.Aggregate("", (current, w) => current + (w.Word + "\t[ " + w.Hardness + " ]\r\n"));

            SaveFileDialog sfd = new SaveFileDialog();
            if (sfd.ShowDialog() == DialogResult.OK)
            {
                StreamWriter sw = new StreamWriter(sfd.FileName);
                sw.Write(strGre);
                sw.Close();
            }
        }
コード例 #12
0
        private void button6_Click(object sender, EventArgs e)
        {
            var entities = new gredbEntities();
            var parser = new ParserHelper(entities);

            GreWord[] greWords = (from w in entities.GreWords
                                  //where w.list_name == comboBox1.Text
                                  orderby w.Word
                                  select w).ToArray();

            String strGre = "";
            foreach (GreWord w in greWords)
            {
                strGre += w.Word + "\r\n";
                strGre += getGoogleSynonym(w) + "\r\n";
                strGre += getMnemonics(w) + "\r\n";
                strGre += "\r\n";
                strGre += "\r\n";
            }

            SaveFileDialog sfd = new SaveFileDialog();
            if (sfd.ShowDialog() == DialogResult.OK)
            {
                StreamWriter sw = new StreamWriter(sfd.FileName);
                sw.Write(strGre);
                sw.Close();
            }
        }
コード例 #13
0
        private void button5_Click(object sender, EventArgs e)
        {
            var entities = new gredbEntities();

            GreWord[] greWords = (from w in entities.GreWords
                                  where w.Hardness > 4
                                  orderby w.Hardness descending
                                  select w).ToArray();

            String strGre = "";
            foreach (GreWord w in greWords)
            {
                strGre += w.Word + "\r\n";
                strGre += getGoogleSynonym(w) + "\r\n";
                strGre += getMnemonics(w) + "\r\n";
                strGre += "\r\n";
                strGre += "\r\n";
            }

            SaveFileDialog sfd = new SaveFileDialog();
            if (sfd.ShowDialog() == DialogResult.OK)
            {
                StreamWriter sw = new StreamWriter(sfd.FileName);
                sw.Write(strGre);
                sw.Close();
            }
        }
コード例 #14
0
        void SearchBySynonym(string text, bool isBySynonym = true)
        {
            long listNameId = 0;
            comboList.SelectedIndex = 0;
            _entities.Dispose();
            _entities = new gredbEntities();

            if (isBySynonym)
            {
                _plainWordList = (from w in _entities.GoogleSynonyms
                                  where w.Synonym.Contains(text)
                                  orderby w.Word
                                  select new PlainWord()
                                  {
                                      Word = w.Word,
                                      Forgotten = w.GreWord.Forgotten,
                                      Remembered = w.GreWord.Remembered,
                                      Hardness = w.GreWord.Hardness,
                                  }).Distinct().ToList();
            }
            else
            {
                _plainWordList = (from w in _entities.GreWordSynonyms
                                  where w.Antonyms.Contains(textSearchSynonym.Text)
                                  orderby w.Word
                                  select new PlainWord()
                                  {
                                      Word = w.Word,
                                      Forgotten = w.GreWord.Forgotten,
                                      Remembered = w.GreWord.Remembered,
                                      Hardness = w.GreWord.Hardness,
                                  }).Distinct().ToList();
            }

            //listBox1.Items.Clear();
            wordsDataListView.Items.Clear();
            wordsDataListView.DataSource = _plainWordList;
        }
コード例 #15
0
        String getGoogleSynonym(GreWord gw)
        {
            var entities = new gredbEntities();
            var parser = new ParserHelper(entities);

            String synnonym = "";

            List<GoogleSynonym> gSyn = (from w in entities.GoogleSynonyms
                                        where w.GreWord.Word == gw.Word
                                        select w).ToList();
            foreach (GoogleSynonym gs in gSyn)
                synnonym += gs.Synonym + ", ";

            return synnonym;
        }
コード例 #16
0
        private void LoadWordList()
        {
            long listNameId = Convert.ToInt64(comboList.SelectedValue);
            _entities.Dispose();
            _entities = new gredbEntities();

            if (listNameId > 0)
            {
                _plainWordList = (from w in _entities.ListedWords
                                  where w.ListName.Id == listNameId
                                  orderby w.GreWord.Word
                                  select new PlainWord()
                                  {
                                      Word = w.GreWord.Word,
                                      Forgotten = w.GreWord.Forgotten,
                                      Remembered = w.GreWord.Remembered,
                                      Hardness = w.GreWord.Hardness,
                                  }).ToList();
            }
            else if (listNameId == 0)
            {
                _plainWordList = (from w in _entities.GreWords
                                  orderby w.Word
                                  select new PlainWord()
                                  {
                                      Word = w.Word,
                                      Forgotten = w.Forgotten,
                                      Remembered = w.Remembered,
                                      Hardness = w.Hardness,
                                  }).ToList();
            }
            else
            {
                _plainWordList = new List<PlainWord>();
            }

            //listBox1.Items.Clear();
            wordsDataListView.Items.Clear();
            wordsDataListView.DataSource = _plainWordList;
        }
コード例 #17
0
ファイル: WebUrlsForm.cs プロジェクト: kaloutsa/maksudproject
 public WebUrlsForm(gredbEntities entities)
 {
     _entities = entities;
     InitializeComponent();
 }