public ConnectConfigFrom(SelectFileInfo objSelectFileInfo) { this.InitializeComponent(); this._SelectFileInfo = objSelectFileInfo; this._CodeConfigHelper = new CodeConfigHelper(objSelectFileInfo.CodeConfigPath); this.LoadConnectString(); }
private void LoadTableSchema(string ConnectionStringName) { if (!string.IsNullOrWhiteSpace(ConnectionStringName)) { this.gvdTables.AutoGenerateColumns = false; this._ConnectionString = this._CodeConfigHelper.GetConnectionString(ConnectionStringName, out this._Database); try { this._TableRuleSchemaList = SqlSchemaHelper.GetAllRuleTables(this._Database, this._ConnectionString, true); this._TableRuleSchemaList = (from x in this._TableRuleSchemaList where this._BusinessNodeInfoList.Keys.Contains(x.TableName) select x).ToList <TableRuleSchema>(); foreach (TableRuleSchema current in this._TableRuleSchemaList) { BusinessNodeInfo objBusinessNodeInfo = this._BusinessNodeInfoList[current.TableName]; current.IsCreate = true; CodeConfigHelper.BusinessNodeToTableRuleSchema(objBusinessNodeInfo, current); } this.gvdTables.DataSource = this._TableRuleSchemaList; } catch (Exception ex) { MessageBox.Show("加载表错误,异常信息:" + ex.ToString()); } } }
private void LoadTableSchema(string ConnectionStringName) { if (!string.IsNullOrWhiteSpace(ConnectionStringName)) { this.gvdTables.AutoGenerateColumns = false; this._ConnectionString = this._CodeConfigHelper.GetConnectionString(ConnectionStringName, out this._Database); try { this._TableRuleSchemaList = SqlSchemaHelper.GetAllRuleTables(this._Database, this._ConnectionString, !this.IsView.Checked); List <BusinessNodeInfo> business = this._CodeConfigHelper.GetBusiness(); using (List <TableRuleSchema> .Enumerator enumerator = this._TableRuleSchemaList.GetEnumerator()) { while (enumerator.MoveNext()) { TableRuleSchema objTableRuleSchema = enumerator.Current; BusinessNodeInfo objBusinessNodeInfo = business.FirstOrDefault((BusinessNodeInfo s) => s.TableName == objTableRuleSchema.TableName); CodeConfigHelper.BusinessNodeToTableRuleSchema(objBusinessNodeInfo, objTableRuleSchema); } } this.gvdTables.DataSource = this._TableRuleSchemaList; } catch (Exception ex) { MessageBox.Show("加载表错误,异常信息:" + ex.ToString()); } } }
public BusinessNodeInfo GetBusinessNodeInfo(SelectFileInfo objSelectFileInfo) { BusinessNodeInfo result; if (!objSelectFileInfo.IsExistsCodeConfig()) { result = null; } else { string itemPathEntityName = objSelectFileInfo.GetItemPathEntityName(); if (string.IsNullOrWhiteSpace(itemPathEntityName)) { MessageBox.Show(objSelectFileInfo.ItemFileName + ".cs,不是基础业务层类,因此无法更新或新增"); result = null; } else { CodeConfigHelper codeConfigHelper = new CodeConfigHelper(objSelectFileInfo.CodeConfigPath); if (!codeConfigHelper.LoadCodeConfigXml()) { result = null; } else { BusinessNodeInfo business = codeConfigHelper.GetBusiness(itemPathEntityName); if (business == null) { if (MessageBox.Show(itemPathEntityName + "实体未配置业务XML?是否配置吗?", "", MessageBoxButtons.OKCancel) != DialogResult.OK) { result = null; } else { Dictionary <string, BusinessNodeInfo> dictionary = new Dictionary <string, BusinessNodeInfo>(); BusinessNodeInfo readFileBusinessNodeInfo = CodeConfigHelper.GetReadFileBusinessNodeInfo(itemPathEntityName, objSelectFileInfo.ProjectPath); if (readFileBusinessNodeInfo == null) { MessageBox.Show(objSelectFileInfo.ItemFileName + ".cs,不是基础业务层类,因此无法配置XML"); result = null; } else { dictionary.Add(readFileBusinessNodeInfo.TableName, readFileBusinessNodeInfo); AKeyAddCodeConfig aKeyAddCodeConfig = new AKeyAddCodeConfig(objSelectFileInfo, dictionary); aKeyAddCodeConfig.Show(); result = null; } } } else { result = business; } } } } return(result); }
public AKeyAddCodeConfig(SelectFileInfo objSelectFileInfo, Dictionary <string, BusinessNodeInfo> businessNodeInfoList) { this.InitializeComponent(); this._SelectFileInfo = objSelectFileInfo; this._CodeConfigHelper = new CodeConfigHelper(objSelectFileInfo.CodeConfigPath); if (this._CodeConfigHelper.LoadCodeConfigXml()) { this._BusinessNodeInfoList = businessNodeInfoList; this._CodeConfigHelper.InitConnectionStrings(this.boxConnectString); this.LoadTableSchema(this.boxConnectString.SelectedItem.ToString()); } }
public SqlListForm(SelectFileInfo objSelectFileInfo, BusinessNodeInfo objBusinessNodeInfo) { this.InitializeComponent(); this._SelectFileInfo = objSelectFileInfo; this._CodeConfigHelper = new CodeConfigHelper(objSelectFileInfo.CodeConfigPath); if (this._CodeConfigHelper.LoadCodeConfigXml()) { this._BusinessNodeInfo = objBusinessNodeInfo; this.Text = this._BusinessNodeInfo.TableName + "列表界面生成"; string text = ""; string text2 = ""; this._CodeConfigHelper.GetBusinessNodeInfoUIPath(objBusinessNodeInfo, out text, out text2); this.txtUIProjectPath.Text = text; this.txtUIProjectName.Text = text2; this.txtModuleID.Text = this._BusinessNodeInfo.ModuleID; this.txtEditUrl.Text = (string.IsNullOrWhiteSpace(this._BusinessNodeInfo.EditUrl) ? (objBusinessNodeInfo.EntityName + "Edit.aspx") : this._BusinessNodeInfo.EditUrl); } }
public SqlRuleCodeForm(SelectFileInfo objSelectFileInfo) { this.InitializeComponent(); this._SelectFileInfo = objSelectFileInfo; this._CodeConfigHelper = new CodeConfigHelper(objSelectFileInfo.CodeConfigPath); if (this._CodeConfigHelper.LoadCodeConfigXml()) { this.txtConnectionKey.Text = this._CodeConfigHelper.GetBusinessNodeInfoExistsConnectionString(); this._CodeConfigHelper.InitConnectionStrings(this.boxConnectString); this.LoadTableSchema(this.boxConnectString.SelectedItem.ToString()); this.boxLogType.Items.Clear(); foreach (DataRow dataRow in SqlSchemaHelper.GetLogType(objSelectFileInfo.WTFConfigPath).Rows) { this.boxLogType.Items.Add(dataRow["ModuleTypeCode"].ToString()); } this.boxLogType.SelectedItem = this._CodeConfigHelper.GetBusinessNodeInfoExistsLogModuleType(); } }
public SqlEditForm(SelectFileInfo objSelectFileInfo, BusinessNodeInfo objBusinessNodeInfo) { this.InitializeComponent(); this._SelectFileInfo = objSelectFileInfo; this._CodeConfigHelper = new CodeConfigHelper(objSelectFileInfo.CodeConfigPath); if (this._CodeConfigHelper.LoadCodeConfigXml()) { this._BusinessNodeInfo = objBusinessNodeInfo; this.Text = this._BusinessNodeInfo.TableName + "编辑界面生成"; string text = ""; string text2 = ""; this._CodeConfigHelper.GetBusinessNodeInfoUIPath(objBusinessNodeInfo, out text, out text2); this.txtUIProjectPath.Text = text; this.txtUIProjectName.Text = text2; this.txtBackUrl.Text = (string.IsNullOrWhiteSpace(this._BusinessNodeInfo.ListUrl) ? (objBusinessNodeInfo.EntityName + "List.aspx") : this._BusinessNodeInfo.ListUrl); this.gvdData.AutoGenerateColumns = false; string schemaName = ""; string connectionString = this._CodeConfigHelper.GetConnectionString(this._BusinessNodeInfo.ConnectionKey, out schemaName); this._CurrentColumnList = SqlSchemaHelper.GetTableColumnsSchema(schemaName, this._BusinessNodeInfo.TableName, this._CodeConfigHelper, connectionString); this.gvdData.DataSource = (from s in this._CurrentColumnList where s.ColumnType == "Common" && !s.FieldName.ToLower().Contains("guid") select s).ToList <ColumnEditSchema>(); } }
public TableRuleSchema CreateItemTableRuleSchema(SelectFileInfo objSelectFileInfo) { TableRuleSchema result; if (!objSelectFileInfo.IsExistsCodeConfig()) { result = null; } else { string itemPathEntityName = objSelectFileInfo.GetItemPathEntityName(); if (string.IsNullOrWhiteSpace(itemPathEntityName)) { MessageBox.Show(objSelectFileInfo.ItemFileName + ".cs,不是基础业务层类,因此无法更新或新增"); result = null; } else { CodeConfigHelper codeConfigHelper = new CodeConfigHelper(objSelectFileInfo.CodeConfigPath); if (!codeConfigHelper.LoadCodeConfigXml()) { result = null; } else { BusinessNodeInfo business = codeConfigHelper.GetBusiness(itemPathEntityName); if (business == null) { if (MessageBox.Show(itemPathEntityName + "实体未配置业务XML?是否配置吗?", "", MessageBoxButtons.OKCancel) != DialogResult.OK) { result = null; } else { Dictionary <string, BusinessNodeInfo> dictionary = new Dictionary <string, BusinessNodeInfo>(); BusinessNodeInfo readFileBusinessNodeInfo = CodeConfigHelper.GetReadFileBusinessNodeInfo(itemPathEntityName, objSelectFileInfo.ProjectPath); if (readFileBusinessNodeInfo == null) { MessageBox.Show(objSelectFileInfo.ItemFileName + ".cs,不是基础业务层类,因此无法配置XML"); result = null; } else { dictionary.Add(readFileBusinessNodeInfo.TableName, readFileBusinessNodeInfo); AKeyAddCodeConfig aKeyAddCodeConfig = new AKeyAddCodeConfig(objSelectFileInfo, dictionary); aKeyAddCodeConfig.Show(); result = null; } } } else { string schemaName = ""; string connectionString = codeConfigHelper.GetConnectionString(business.ConnectionKey, out schemaName); if (string.IsNullOrWhiteSpace(connectionString)) { if (MessageBox.Show("连接串键值(" + business.ConnectionKey + ")不存在,要配置连接吗?", "", MessageBoxButtons.OKCancel) == DialogResult.OK) { ConnectConfigFrom connectConfigFrom = new ConnectConfigFrom(objSelectFileInfo); connectConfigFrom.Show(); } result = null; } else { string tableName = business.TableName; try { TableRuleSchema tableRuleSchema = SqlSchemaHelper.GetAllRuleTables(schemaName, connectionString, true).FirstOrDefault((TableRuleSchema s) => s.TableName == tableName); if (tableRuleSchema == null) { MessageBox.Show("数据库找不到此:" + tableName + ",请检查配置是否正确"); result = null; } else { CodeConfigHelper.BusinessNodeToTableRuleSchema(business, tableRuleSchema); tableRuleSchema.Columns = SqlSchemaHelper.GetTableRuleColumnsSchema(connectionString, schemaName, tableRuleSchema.TableName, codeConfigHelper); result = tableRuleSchema; } } catch (Exception ex) { MessageBox.Show("更新代码出现异常,异常错误:" + ex.ToString()); result = null; } } } } } } return(result); }
private void AddCodeConfigItem_Click(object commandBarControl, ref bool handled, ref bool cancelDefault) { try { SelectFileInfo selectFileInfo = this.GetSelectFileInfo(); if (selectFileInfo == null) { return; } if (!selectFileInfo.IsExistsCodeConfig()) { handled = true; return; } CodeConfigHelper codeConfigHelper = new CodeConfigHelper(selectFileInfo.CodeConfigPath); if (!codeConfigHelper.LoadCodeConfigXml()) { return; } if (!Directory.Exists(selectFileInfo.ProjectPath + "\\DataAccess") || !Directory.Exists(selectFileInfo.ProjectPath + "\\Business") || !Directory.Exists(selectFileInfo.ProjectPath + "\\DataEntity")) { DialogResult dialogResult = MessageBox.Show("业务层不存在,要新增业务层吗?", "", MessageBoxButtons.OKCancel); if (dialogResult == DialogResult.OK) { SqlRuleCodeForm sqlRuleCodeForm = new SqlRuleCodeForm(selectFileInfo); sqlRuleCodeForm.Show(); } handled = true; return; } string[] files = Directory.GetFiles(selectFileInfo.ProjectPath + "\\DataAccess", "Da*.cs"); string[] files2 = Directory.GetFiles(selectFileInfo.ProjectPath + "\\Business", "Biz*.cs"); string[] files3 = Directory.GetFiles(selectFileInfo.ProjectPath + "\\DataEntity", "*.cs"); if (files.Count <string>() <= 0 || files2.Count <string>() <= 0 || files3.Count <string>() <= 0) { DialogResult dialogResult = MessageBox.Show("业务层不存在,要新增业务层吗?", "", MessageBoxButtons.OKCancel); if (dialogResult == DialogResult.OK) { SqlRuleCodeForm sqlRuleCodeForm = new SqlRuleCodeForm(selectFileInfo); sqlRuleCodeForm.Show(); } handled = true; return; } Dictionary <string, BusinessNodeInfo> dictionary = new Dictionary <string, BusinessNodeInfo>(); List <BusinessNodeInfo> business = codeConfigHelper.GetBusiness(); string[] array = files3; for (int i = 0; i < array.Length; i++) { string path = array[i]; string fileNameWithoutExtension = Path.GetFileNameWithoutExtension(path); string value = Path.Combine(selectFileInfo.ProjectPath, "DataAccess", "Da" + fileNameWithoutExtension + ".cs"); string value2 = Path.Combine(selectFileInfo.ProjectPath, "Business", "Biz" + fileNameWithoutExtension + ".cs"); if (files.Contains(value) && files2.Contains(value2)) { BusinessNodeInfo objBusinessNodeInfo = CodeConfigHelper.GetReadFileBusinessNodeInfo(fileNameWithoutExtension, selectFileInfo.ProjectPath); if (objBusinessNodeInfo != null) { BusinessNodeInfo businessNodeInfo = business.FirstOrDefault((BusinessNodeInfo s) => s.TableName == objBusinessNodeInfo.TableName); if (businessNodeInfo == null) { dictionary.Add(objBusinessNodeInfo.TableName, objBusinessNodeInfo); } else { businessNodeInfo.ConnectionKeyOrConnectionString = objBusinessNodeInfo.ConnectionKeyOrConnectionString; businessNodeInfo.LogModuleType = objBusinessNodeInfo.LogModuleType; businessNodeInfo.IsMongoDB = objBusinessNodeInfo.IsMongoDB; dictionary.Add(businessNodeInfo.TableName, businessNodeInfo); } } } } AKeyAddCodeConfig aKeyAddCodeConfig = new AKeyAddCodeConfig(selectFileInfo, dictionary); aKeyAddCodeConfig.Show(); handled = true; } catch (Exception ex) { MessageBox.Show("一键生成配置:" + ex.Message); } handled = true; }