示例#1
0
        private void AddFile(string ext)
        {
            InputForm frm = new InputForm();

            frm.Title = string.Format("请输入文件名称 (.{0})", ext);
            frm.Value = "test";
            if (frm.ShowDialog() == System.Windows.Forms.DialogResult.OK)
            {
                if (string.IsNullOrEmpty(frm.Value))
                {
                    ShowMessage.Alert("文件名称不能为空。");
                    frm.ShowDialog();
                    return;
                }

                DirectoryInfo rootFolder = tvTemplates.SelectedNode.Tag as DirectoryInfo;
                string        path       = string.Format("{0}\\{1}.{2}", rootFolder.FullName, frm.Value, ext);
                if (File.Exists(path))
                {
                    ShowMessage.Alert("文件已存在。");
                    frm.ShowDialog();
                    return;
                }

                Generator.IOHelper.WriteFile(path, "");
                LoadFiles(tvTemplates.SelectedNode);
            }
        }
示例#2
0
        private void btnOutputCode_Click(object sender, EventArgs e)
        {
            foreach (Model.Table table in selectTableUserControl1.SelectedTables)
            {
                if (table.Fields.Count == 0)
                {
                    ShowMessage.Alert(string.Format("表{0}不存在任何字段,无法生成!", table.Name));
                    return;
                }
            }

            if (false == ShowMessage.Confirm("确定要输出代码吗?"))
            {
                return;
            }

            if (Directory.Exists(CreateFilePath))
            {
                if (ShowMessage.Confirm("该目录已存在,是否删除?"))
                {
                    try
                    {
                        Directory.Delete(CreateFilePath, true);
                    }
                    catch (Exception ex)
                    {
                        ShowMessage.Error(ex.ToString());
                    }
                }
            }

            selectTemplateUserControl1.SaveSetting();
            db.SelectedTables = selectTableUserControl1.SelectedTables;

            //在Settings中额外地增加一项设定,值为当前选中的所有表
            List <Setting> settings = selectTemplateUserControl1.Settings;

            //目录有可能不存在,如果没有生成任何代码则打开目录会出错,故先创建目录
            if (false == Directory.Exists(CreateFilePath))
            {
                Directory.CreateDirectory(CreateFilePath);
            }

            try
            {
                //开始生成
                Template.GenerateFiles(selectTemplateUserControl1.TemplateFolderPath, db, settings, CreateFilePath,
                                       new ProcessChanged(i => { progressBar1.Value = i; }));
            }
            catch (Exception ex)
            {
                ShowMessage.Error(ex.Message);
            }

            progressBar1.Value = 0;
            if (ShowMessage.Confirm("成功生成,是否打开目录?"))
            {
                Process.Start(CreateFilePath);
            }
        }
示例#3
0
        private void mnuAddTemplate_Click(object sender, EventArgs e)
        {
            InputForm frm = new InputForm();

            frm.Title = "请输入模板名称";
            frm.Value = "新模板";
            if (frm.ShowDialog() == System.Windows.Forms.DialogResult.OK)
            {
                if (string.IsNullOrEmpty(frm.Value))
                {
                    ShowMessage.Alert("模板名称不能为空。");
                    frm.ShowDialog();
                    return;
                }

                DirectoryInfo rootFolder = rootNode.Tag as DirectoryInfo;
                string        path       = rootFolder.FullName + "\\" + frm.Value;
                if (Directory.Exists(path))
                {
                    ShowMessage.Alert("模板已存在。");
                    frm.ShowDialog();
                    return;
                }

                Generator.IOHelper.CopyFolder(Application.StartupPath + "\\Config\\NewTemplate", path);
                LoadTempates();
                if (TemplateChanged != null)
                {
                    TemplateChanged();
                }
            }
        }
示例#4
0
 private void menuInsert_Click(object sender, EventArgs e)
 {
     if (CreateCode != null)
     {
         string         dbName = tvDatabase.SelectedNode.Parent.Parent.Text;
         Model.Database db     = tvDatabase.SelectedNode.Parent.Parent.Tag as Model.Database;
         Model.Table    table  = tvDatabase.SelectedNode.Tag as Model.Table;
         if (table != null)
         {
             SqlSeleteViewForm ssv  = new SqlSeleteViewForm(db, table);
             string            str  = "";
             string            str2 = "insert into ";
             str2 = (str2 + "" + this.tvDatabase.SelectedNode.Text + "") + " (" + this.tvDatabase.SelectedNode.Nodes[0].Text;
             for (int i = 1; i < this.tvDatabase.SelectedNode.Nodes.Count; i++)
             {
                 str  = str + ",''";
                 str2 = str2 + "," + this.tvDatabase.SelectedNode.Nodes[i].Text;
             }
             str2 = (str2 + ") \n" + "values(''") + str + ")";
             if ((ssv.sqlTextEditor.Text.Trim().Length != 0) && (ssv.sqlTextEditor.Text[ssv.sqlTextEditor.Text.Length - 1] != '\n'))
             {
                 ssv.sqlTextEditor.Text = ssv.sqlTextEditor.Text + "\n";
             }
             ssv.sqlTextEditor.Text = ssv.sqlTextEditor.Text + str2;
             ssv.Show(MainForm.dockPanel);
         }
         else
         {
             ShowMessage.Alert("请先选中一个表或视图。");
         }
     }
 }
示例#5
0
 private void menuDelete_Click(object sender, EventArgs e)
 {
     if (CreateCode != null)
     {
         string         dbName = tvDatabase.SelectedNode.Parent.Parent.Text;
         Model.Database db     = tvDatabase.SelectedNode.Parent.Parent.Tag as Model.Database;
         Model.Table    table  = tvDatabase.SelectedNode.Tag as Model.Table;
         if (table != null)
         {
             SqlSeleteViewForm ssv  = new SqlSeleteViewForm(db, table);
             string            str  = "\nwhere 1 = 1";
             string            str2 = "delete from ";
             str2 = (str2 + "" + this.tvDatabase.SelectedNode.Text + "") + str;
             if ((ssv.sqlTextEditor.Text.Trim().Length != 0) && (ssv.sqlTextEditor.Text[ssv.sqlTextEditor.Text.Length - 1] != '\n'))
             {
                 ssv.sqlTextEditor.Text = ssv.sqlTextEditor.Text + "\n";
             }
             ssv.sqlTextEditor.Text = ssv.sqlTextEditor.Text + str2;
             ssv.Show(MainForm.dockPanel);
         }
         else
         {
             ShowMessage.Alert("请先选中一个表或视图。");
         }
     }
 }
示例#6
0
 /// <summary>
 /// 对选中的表进行生成代码操作
 /// </summary>
 public void CreateCurrentTableCode()
 {
     if (CreateCode != null)
     {
         Model.Table table = tvDatabase.SelectedNode.Tag as Model.Table;
         if (table != null)
         {
             CreateCode(table);
         }
         else
         {
             ShowMessage.Alert("请先选中一个表或视图。");
         }
     }
 }
示例#7
0
 /// <summary>
 /// 对选中的库进行输出代码操作
 /// </summary>
 public void OutputSelectedDatabaseCode()
 {
     if (OutputCode != null)
     {
         Model.Database database = tvDatabase.SelectedNode.Tag as Model.Database;
         if (database != null)
         {
             OutputCode(database);
         }
         else
         {
             ShowMessage.Alert("请先选中一个数据库。");
         }
     }
 }
示例#8
0
        private void btnSaveAll_Click(object sender, EventArgs e)
        {
            if (tcCodes.TabPages == null)
            {
                ShowMessage.Alert("请先生成代码!");
                return;
            }

            FolderBrowserDialog dlg = new FolderBrowserDialog();

            if (dlg.ShowDialog() == DialogResult.OK)
            {
                foreach (TabPage page in tcCodes.TabPages)
                {
                    Generator.Codes code = page.Tag as Generator.Codes;
                    code.Generate(dlg.SelectedPath);
                }
            }
        }
示例#9
0
        private void btnSaveCurrentTab_Click(object sender, EventArgs e)
        {
            if (tcCodes.SelectedTab == null)
            {
                ShowMessage.Alert("请先生成代码!");
                return;
            }

            Generator.Codes code = tcCodes.SelectedTab.Tag as Generator.Codes;

            SaveFileDialog dlg = new SaveFileDialog();

            dlg.AddExtension = true;
            dlg.FileName     = code.FileName;
            dlg.Filter       = string.Format(".{0}|*.{0}", code.Ext);
            if (dlg.ShowDialog() == DialogResult.OK)
            {
                Generator.IOHelper.WriteFile(dlg.FileName, code.Code);
            }
        }
示例#10
0
 private void btnTest_Click(object sender, EventArgs e)
 {
     try
     {
         if (Regex.IsMatch(txtTest.Text, txtRegex.Text))
         {
             labTestResult.Text      = "测试成功";
             labTestResult.BackColor = Color.Green;
         }
         else
         {
             labTestResult.Text      = "测试失败";
             labTestResult.BackColor = Color.Red;
         }
         labTestResult.Visible = true;
     }
     catch (Exception)
     {
         labTestResult.Visible = false;
         ShowMessage.Alert("正则表达式错误。");
     }
 }
示例#11
0
 private void txtJs_Click(object sender, EventArgs e)
 {
     ShowMessage.Alert("¸´ÖÆ¡£");
 }