private void but_ok_Click(object sender, RoutedEventArgs e)
        {
            bool b = ControlSql(false);

            if (b && ConfigJson.AddLink(ref m_linkconfig))
            {
                Tag = m_linkconfig;
                SystemError.Information("数据库创建成功");
                DialogResult = true;
            }
        }
예제 #2
0
        void SetTreeNodeServerMenu(TreeView tree, TreeViewItem item)
        {
            TreeNodeServer treenodeserver = (TreeNodeServer)tree.SelectedItem;
            ContextMenu    cm             = new ContextMenu();

            MenuItem menu_link = new MenuItem();

            menu_link.Header = "连接";
            menu_link.Click += delegate(object obj, RoutedEventArgs earg)
            {
                SetTreeNodeDatabase(treenodeserver);
            };
            cm.Items.Add(menu_link);
            if (treenodeserver.childer.Count > 0)
            {
                menu_link.IsEnabled = false;
            }

            MenuItem menu_unlink = new MenuItem();

            menu_unlink.Header = "断开";
            menu_unlink.Click += delegate(object obj, RoutedEventArgs earg)
            {
                treenodeserver.childer.Clear();
            };
            cm.Items.Add(menu_unlink);

            cm.Items.Add(new Separator());

            MenuItem menu_del = new MenuItem();

            menu_del.Header = "删除";
            menu_del.Click += delegate(object obj, RoutedEventArgs earg)
            {
                MessageBoxResult mbr = SystemError.ConfrimOKCancel("确定删除此服务器实例吗?");
                if (mbr == MessageBoxResult.OK)
                {
                    if (ConfigJson.DelLink(treenodeserver.id))
                    {
                        DelTreeNodeServer(treenodeserver.id);
                        SystemError.Information("删除成功");
                    }
                }
            };
            cm.Items.Add(menu_del);

            item.ContextMenu = cm;
        }
예제 #3
0
        private void but_ok_Click(object sender, RoutedEventArgs e)
        {
            TreeNodeDatabase treenodedatabase = (TreeNodeDatabase)this.Tag;
            ISqlControl      sqlcontrol       = treenodedatabase.sqlcontrol;

            DataTable tables  = sqlcontrol.GetTableList(treenodedatabase.connectionstring, treenodedatabase.database);
            DataTable columns = sqlcontrol.GetColumnList(treenodedatabase.connectionstring, treenodedatabase.database);
            List <Dictionary <string, object> > tablecolumnslist = new List <Dictionary <string, object> >();

            for (int i = 0; i < tables.Rows.Count; i++)
            {
                Dictionary <string, object> dic = new Dictionary <string, object>();
                DataTable tablecolumns          = columns.Clone();
                DataRow[] drarr = columns.Select().Where(a => (string)a["tablename"] == (string)tables.Rows[i]["name"]).ToArray();
                for (int j = 0; j < drarr.Length; j++)
                {
                    tablecolumns.Rows.Add(drarr[j].ItemArray);
                }
                dic["tablename"] = (string)tables.Rows[i]["name"];
                dic["columns"]   = tablecolumns;
                tablecolumnslist.Add(dic);
            }

            string modelspath = text_path.Text + "/Models";

            Directory.CreateDirectory(modelspath);
            using (StreamWriter sw = new StreamWriter(modelspath + "/Models.cs", false, Encoding.UTF8))
            {
                sw.Write(sqlcontrol.GenerateModels(tables));
            }
            for (int i = 0; i < tablecolumnslist.Count; i++)
            {
                using (StreamWriter sw = new StreamWriter(modelspath + "/" + tablecolumnslist[i]["tablename"] + ".cs", false, Encoding.UTF8))
                {
                    sw.Write(sqlcontrol.GenerateModel((DataTable)tablecolumnslist[i]["columns"], (string)tablecolumnslist[i]["tablename"]));
                }
            }
            using (StreamWriter sw = new StreamWriter(modelspath + "/GetModelList.cs", false, Encoding.UTF8))
            {
                sw.Write(sqlcontrol.GenerateGetModelList(tables, columns));
            }

            string notifymodelspath = text_path.Text + "/Notify Models";

            Directory.CreateDirectory(notifymodelspath);
            using (StreamWriter sw = new StreamWriter(notifymodelspath + "/Models.cs", false, Encoding.UTF8))
            {
                sw.Write(sqlcontrol.GenerateModels2(tables));
            }
            for (int i = 0; i < tablecolumnslist.Count; i++)
            {
                using (StreamWriter sw = new StreamWriter(notifymodelspath + "/" + tablecolumnslist[i]["tablename"] + ".cs", false, Encoding.UTF8))
                {
                    sw.Write(sqlcontrol.GenerateModel2((DataTable)tablecolumnslist[i]["columns"], (string)tablecolumnslist[i]["tablename"]));
                }
            }
            using (StreamWriter sw = new StreamWriter(notifymodelspath + "/GetModelList.cs", false, Encoding.UTF8))
            {
                sw.Write(sqlcontrol.GenerateGetModelList(tables, columns));
            }

            SystemError.Information("类库已成功生成");
            this.DialogResult = true;
        }
예제 #4
0
 private void menu_about_Click(object sender, RoutedEventArgs e)
 {
     SystemError.Information("我是可爱的小熊猫...");
 }
예제 #5
0
 private void but_ok_Click(object sender, RoutedEventArgs e)
 {
     ConfigJson.SetNamespace(text_namespace.Text);
     SystemError.Information("配置成功");
     this.DialogResult = true;
 }