Esempio n. 1
0
        /// <summary>
        /// 刷新数据库表和视图
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void 刷新ToolStripMenuItem2_Click(object sender, EventArgs e)
        {
            TreeNode node = Treeview.SelectedNode;

            if (node.Level == 3)
            {
                node = node.Parent;
            }
            if (node.Level == 4)
            {
                node = node.Parent.Parent;
            }

            node.Nodes.Clear();

            Connection conModel = null;

            try
            {
                conModel = _ConnectList.Find(delegate(Connection con) { return(con.ID.ToString().Equals(node.Parent.Tag.ToString())); });

                IDbObject dbObject;

                if (conModel.DbType.Equals(DatabaseType.MsAccess.ToString()))
                {
                    dbObject = new WEF.DbDAL.OleDb.DbObject(conConnectionString);
                    ShowTablesAndViews(node, dbObject.GetTables(""), dbObject.GetVIEWs(""));
                }
                else if (conModel.DbType.Equals(DatabaseType.SqlServer.ToString()))
                {
                    dbObject = new WEF.DbDAL.SQL2000.DbObject(conConnectionString);
                    ShowTablesAndViews(node, dbObject.GetTables(node.Text), dbObject.GetVIEWs(node.Text));
                }
                else if (conModel.DbType.Equals(DatabaseType.SqlServer9.ToString()))
                {
                    dbObject = new WEF.DbDAL.SQL2005.DbObject(conConnectionString);
                    ShowTablesAndViews(node, dbObject.GetTables(node.Text), dbObject.GetVIEWs(node.Text));
                }
                else if (conModel.DbType.Equals(DatabaseType.Oracle.ToString()))
                {
                    dbObject = new WEF.DbDAL.Oracle.DbObject(conConnectionString);
                    ShowTablesAndViews(node, dbObject.GetTables(node.Text), dbObject.GetVIEWs(node.Text));
                }
                else if (conModel.DbType.Equals(DatabaseType.MySql.ToString()))
                {
                    dbObject = new WEF.DbDAL.MySql.DbObject(conConnectionString);
                    ShowTablesAndViews(node, dbObject.GetTables(node.Text), dbObject.GetVIEWs(node.Text));
                }
                else if (conModel.DbType.Equals(DatabaseType.Sqlite3.ToString()))
                {
                    dbObject = new WEF.DbDAL.SQLite.DbObject(conConnectionString);
                    ShowTablesAndViews(node, dbObject.GetTables(node.Text), dbObject.GetVIEWs(node.Text));
                }
                else if (conModel.DbType.Equals(DatabaseType.MongoDB.ToString()))
                {
                    var mongoDBTool = MongoDBTool.Connect(conConnectionString);
                    ShowCollections(node, mongoDBTool.GetCollections(node.Text));
                }
                node.ExpandAll();
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message, "出错啦!", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }