public FrmTableSnippetGen() { InitializeComponent(); ctrlOrderBy = new ColumnOrderByControl(); ctrlOrderBy.Dock = DockStyle.Fill; OrderByPage.Controls.Add(ctrlOrderBy); ctrlWhere = new ColumnSelectControl(); ctrlWhere.Dock = DockStyle.Fill; WhereParamPage.Controls.Add(ctrlWhere); ctrlCodeView = new CodeView(); ctrlCodeView.Dock = DockStyle.Fill; ResultPage.Controls.Add(ctrlCodeView); GenTypePage.Initialize += GenTypePage_Initialize; GenTypePage.Commit += GenTypePage_Commit; WhereParamPage.Initialize += WhereParamPage_Initialize; WhereParamPage.Commit += WhereParamPage_Commit; OrderByPage.Initialize += OrderByPage_Initialize; OrderByPage.Commit += OrderByPage_Commit; }
public void ShowCode(ShowCodeEvent e) { CodeView codeShow = new CodeView(); codeShow.Dock = DockStyle.Fill; DockContent dc = new DockContent(); dc.Text = e.Title; dc.Controls.Add(codeShow); dc.Show(this.dockPanel, DockState.Document); codeShow.Show(e.Code); }
private void ResultSettingPage_Commit(object sender, AeroWizard.WizardPageConfirmEventArgs e) { if (ResultList == null || ResultList.Count == 0) return; DbQueryCodeGen gen = new DbQueryCodeGen(); string code = string.Empty; string connstr = App.Instance.DBLink.ConnectionString; if (ResultList.Count == 1) { var ctrl = ResultList[0]; Module module = new Module(); module.ModuleName = ctrl.RowClassName; module.CodeName = ctrl.RowClassName; if (ctrl.DataTable != null) { foreach (DataColumn dc in ctrl.DataTable.Columns) { ModuleField mf = new ModuleField(module, "", dc.ColumnName, dc.ColumnName); mf.DataType = dc.DataType; mf.Nullable = dc.AllowDBNull; mf.LanguageType = LanguageConvert.GetCSharpType(dc.DataType, dc.AllowDBNull); //Debug.WriteLine("{0} ---> {1}", mf.FieldName, mf.LanguageType); module.Fields.Add(mf); } } if (ctrl.QueryExecuteType == SQLQueryExecuteType.ReadRows) { code = gen.GenForQueryList(this.SQL, module, connstr); } else if (ctrl.QueryExecuteType == SQLQueryExecuteType.ReadOneRow) { code = gen.GenForQueryOne(this.SQL, module, connstr); } else if (ctrl.QueryExecuteType == SQLQueryExecuteType.ExecuteSclor) { if (ctrl.DataTable != null && ctrl.DataTable.Columns != null && ctrl.DataTable.Columns.Count > 0) { var dc = ctrl.DataTable.Columns[0]; Type t = dc.DataType; bool allowDBNull = dc.AllowDBNull; code = gen.GenForExecuteScalar(this.SQL, t, allowDBNull, connstr); } } else { code = gen.GenForExecuteNoQuery(this.SQL, connstr); } } else { List<Module> modules = new List<Module>(); foreach (var ctrl in this.ResultList) { Module module = new Module(); module.ModuleName = ctrl.RowClassName; module.CodeName = ctrl.RowClassName; if (ctrl.DataTable != null) { foreach (DataColumn dc in ctrl.DataTable.Columns) { ModuleField mf = new ModuleField(module, "", dc.ColumnName, dc.ColumnName); mf.DataType = dc.DataType; mf.Nullable = dc.AllowDBNull; mf.LanguageType = LanguageConvert.GetCSharpType(dc.DataType, dc.AllowDBNull); //Debug.WriteLine("{0} ---> {1}", mf.FieldName, mf.LanguageType); module.Fields.Add(mf); } } modules.Add(module); } code = gen.GenForMultiQuery(this.SQL, modules, connstr); } CodeView codeView = new CodeView(); codeView.Dock = DockStyle.Fill; ResultPage.Controls.Add(codeView); codeView.Show(code); }