Exemplo n.º 1
0
        /// <summary>
        /// Initializes GUI elements with properties values.
        /// </summary>
        public override void LoadProperties()
        {
            if (ConnectionProperties == null)
            {
                throw new Exception(Resources.ConnectionPropertiesNull);
            }

            Button okButton = this.ParentForm.AcceptButton as Button;

            okButton.Click += new EventHandler(okButton_Click);

            AdoDotNetConnectionProperties prop =
                (ConnectionProperties as AdoDotNetConnectionProperties);
            DbConnectionStringBuilder cb = prop.ConnectionStringBuilder;

            loadingInProcess = true;
            try
            {
                serverNameTextBox.Text       = (string)cb["Server"];
                userNameTextBox.Text         = (string)cb["User Id"];
                passwordTextBox.Text         = (string)cb["Password"];
                dbList.Text                  = (string)cb["Database"];
                savePasswordCheckBox.Checked = (bool)cb["Persist Security Info"];
            }
            finally
            {
                loadingInProcess = false;
            }
        }
Exemplo n.º 2
0
        private bool AttemptToCreateDatabase()
        {
            AdoDotNetConnectionProperties prop =
                (ConnectionProperties as AdoDotNetConnectionProperties);
            DbConnectionStringBuilder cb = prop.ConnectionStringBuilder;

            string olddb = (string)cb["Database"];

            cb["Database"] = "";
            try
            {
                using (MySqlConnectionSupport conn = new MySqlConnectionSupport())
                {
                    conn.Initialize(null);
                    conn.ConnectionString = cb.ConnectionString;
                    conn.Open(false);
                    conn.ExecuteWithoutResults("CREATE DATABASE `" + dbList.Text + "`", 1, null, 0);
                }
                return(true);
            }
            catch (Exception)
            {
                MessageBox.Show(String.Format(Resources.ErrorAttemptingToCreateDB, dbList.Text));
                return(false);
            }
            finally
            {
                cb["Database"] = olddb;
            }
        }
Exemplo n.º 3
0
        private bool DatabaseExists()
        {
            AdoDotNetConnectionProperties prop =
                (ConnectionProperties as AdoDotNetConnectionProperties);
            DbConnectionStringBuilder cb = prop.ConnectionStringBuilder;

            try
            {
                using (MySqlConnectionSupport conn = new MySqlConnectionSupport())
                {
                    conn.Initialize(null);
                    conn.ConnectionString = cb.ConnectionString;
                    conn.Open(false);
                }
                return(true);
            }
            catch (DbException ex)
            {
                string msg = ex.Message.ToLowerInvariant();
                if (msg.StartsWith("unknown database"))
                {
                    return(false);
                }
                throw;
            }
        }
        private static void WpfPropertyGrid_PropertyValueChanged(object sender, EventArgs e)
        {
            AdoDotNetConnectionProperties conProp = (AdoDotNetConnectionProperties)sender;
            var connString = conProp.ToDisplayString();

            if (!conProp.HasErrors)
            {
                current.ChangeHelpText(connString);
                current.RefreshPropertyList();
            }
        }
Exemplo n.º 5
0
        private void dbList_DropDown(object sender, EventArgs e)
        {
            if (dbListPopulated)
            {
                return;
            }

            AdoDotNetConnectionProperties prop =
                (ConnectionProperties as AdoDotNetConnectionProperties);
            DbConnectionStringBuilder cb = prop.ConnectionStringBuilder;

            try
            {
                using (MySqlConnectionSupport conn = new MySqlConnectionSupport())
                {
                    conn.Initialize(null);
                    conn.ConnectionString = cb.ConnectionString;
                    conn.Open(false);
                    dbList.Items.Clear();
                    using (DataReader reader = conn.Execute("SHOW DATABASES", 1, null, 0))
                    {
                        while (reader.Read())
                        {
                            string dbName = reader.GetItem(0).ToString().ToLowerInvariant();
                            if (dbName == "information_schema")
                            {
                                continue;
                            }
                            if (dbName == "mysql")
                            {
                                continue;
                            }
                            dbList.Items.Add(reader.GetItem(0));
                        }
                        dbListPopulated = true;
                    }
                }
            }
            catch (Exception)
            {
                MessageBox.Show(Resources.UnableToRetrieveDatabaseList);
            }
        }
        private static void WpfPropertyGrid_ErrorValidating(object sender, EventArgs e)
        {
            AdoDotNetConnectionProperties conProp = (AdoDotNetConnectionProperties)sender;

            current.SetErrorText(conProp.ErrorProperties);
        }