コード例 #1
0
ファイル: FrmTableSnippetGen.cs プロジェクト: zhh007/CKGen
        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;
        }
コード例 #2
0
ファイル: FrmMain.cs プロジェクト: zhh007/CKGen
        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);
        }
コード例 #3
0
ファイル: SQLQueryCodeGenWizard.cs プロジェクト: zhh007/CKGen
        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);
        }