private void RunQuery()
        {
            IMongoQuery mongoQuery = _mongoQueryFactory.BuildQuery();
            IEnumerable documents  = null;

            try
            {
                documents = mongoQuery.RunQuery(Server, Database, Port, Query);

                Headers.Clear();
                Items.Clear();

                foreach (IDictionary document in documents)
                {
                    ItemViewModel model = new ItemViewModel(Headers);

                    foreach (string key in document.Keys)
                    {
                        string k = key;
                        if (Headers.SingleOrDefault(field => field.FieldName == k) == null)
                        {
                            Headers.Add(new FieldViewModel()
                            {
                                FieldName = key
                            });
                        }

                        model.Data[key] = document[key].ToString();
                    }

                    Items.Add(model);
                }

                NumberOfResults = string.Format("{0}: {1} docs", DateTime.Now.ToString("HH:mm:ss"), Items.Count);

                ListViewExtension.RefreshUI(Headers);
            }
            catch (QueryValidationException ex)
            {
                _userMessageService.ShowMessage(ex.Message);
                return;
            }
            catch (UnknownServerException ex)
            {
                _userMessageService.ShowMessage(ex.Message);
                return;
            }
            catch (Exception ex)
            {
                _userMessageService.ShowMessage("An error occurred while executing the query: " + ex);
                return;
            }
            finally
            {
                mongoQuery.Dispose();
            }
        }
Exemple #2
0
        private void listViewNodes_MouseDoubleClick(object sender, MouseEventArgs e)
        {
            ListViewExtension listView = (ListViewExtension)sender;

            if (listView.SelectedItems.Count > 0)
            {
                Template     = (CANAPETemplate)listView.SelectedItems[0].Tag;
                DialogResult = DialogResult.OK;
                Close();
            }
        }
Exemple #3
0
        private void listViewNodes_ColumnClick(object sender, ColumnClickEventArgs e)
        {
            ListViewExtension  listView = (ListViewExtension)sender;
            ListViewItemSorter sorter   = (ListViewItemSorter)listView.ListViewItemSorter;

            if (sorter.Column == e.Column)
            {
                sorter.Reverse = !sorter.Reverse;
            }
            else
            {
                sorter.Reverse = false;
                sorter.Column  = e.Column;
            }

            listView.Sort();
        }
Exemple #4
0
        private ListViewExtension CreateTabPage(string name)
        {
            TabPage           page = new TabPage(name);
            ListViewExtension ret  = new ListViewExtension();

            ret.View          = View.Details;
            ret.Dock          = DockStyle.Fill;
            ret.FullRowSelect = true;
            ret.MultiSelect   = false;
            ret.GridLines     = true;
            ret.Columns.Add(CANAPE.Properties.Resources.SelectTemplateForm_NameColumn, 146);
            ret.Columns.Add(CANAPE.Properties.Resources.SelectTemplateForm_DescriptionColumn, 369);

            ret.ColumnClick      += listViewNodes_ColumnClick;
            ret.MouseDoubleClick += listViewNodes_MouseDoubleClick;

            page.Controls.Add(ret);
            _tabs[name] = ret;
            tabControl.TabPages.Add(page);

            return(ret);
        }