Example #1
0
        private bool RunView(CouchViewDefinition viewDefinition)
        {
            var root      = tvResults.Nodes.Add(viewDefinition.Path() + "/" + txtParams.Text);
            var viewQuery = viewDefinition.Query();

            if (!String.IsNullOrEmpty(txtParams.Text))
            {
                foreach (var optionSet in txtParams.Text.Split('&'))
                {
                    var option = optionSet.Split('=');
                    if (option.Length != 2)
                    {
                        MessageBox.Show(txtParams.Text + " is not a valid view query string (needs to be in the form name=value[&name2=value2]).", "Invalid query", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                        return(false);
                    }

                    viewQuery.Options[option[0]] = option[1];
                }
            }

            try
            {
                ShowResult(root, viewQuery.GetResult().result, null);
            }
            catch (Exception ex)
            {
                root.Nodes.Add("Error: " + ex.Message);
                MessageBox.Show(ex.ToString(), "Exception running view", MessageBoxButtons.OK, MessageBoxIcon.Error);
                return(false);
            }

            return(true);
        }