Пример #1
0
        //без статик
        // все что понадобится и может быть связано с папкой  lucene
        private void btnSearch_Click(object sender, RoutedEventArgs e)
        {
            btnPlagCheck.IsEnabled = false;
            DownloadWork.IsEnabled = false;
            var engine = new DBEngine();

            try
            {
                if (engine.CheckWorks())
                {
                    txtAuth.Text = "";
                    txtDis.Text  = "";
                    txtName.Text = "";
                    txtDes.Text  = "";

                    LuceneEngine le = new LuceneEngine();
                    //var c = le.CountDocs();

                    int    number;//количество результатов
                    string field = "";
                    IEnumerable <FileToIndex> results;
                    if (txtboxSearch.Text.StartsWith("#"))
                    {
                        field   = "Hashtags";
                        results = le.Search(txtboxSearch.Text.Substring(1, txtboxSearch.Text.Length - 1),
                                            out number, field);
                    }
                    else
                    {
                        results = le.Search(txtboxSearch.Text,
                                            out number);
                    }
                    lstboxResult.Items.Clear();
                    foreach (var doc in results)
                    {
                        lstboxResult.Items.Add(doc.Id + " " + doc.Title);
                    }
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show("Поиск не может быть проведен.\n" + ex, "Ошибка", MessageBoxButton.OK, MessageBoxImage.Error);
            }
        }