/// <summary> /// 初始化控制器 /// </summary> public void Initiazle() { systemTables = BaseDataController.GetSystemTableList(); DataTable tbbaseTable = BaseDataReader.GetVindicateTableList(); vindicateTableList = new List <TableConfig>(); for (int i = 0; i < tbbaseTable.Rows.Count; i++) { TableConfig tableConfig = new TableConfig(); tableConfig.BASE_TABLE_CN_NAME = tbbaseTable.Rows[i][Tables.base_vindicate_table.BASE_TABLE_CN_NAME].ToString().Trim(); tableConfig.BASE_TABLE_DB_NAME = tbbaseTable.Rows[i][Tables.base_vindicate_table.BASE_TABLE_DB_NAME].ToString().Trim(); tableConfig.ALLOW_USER_EDIT = Convert.ToInt32(tbbaseTable.Rows[i][Tables.base_vindicate_table.ALLOW_USER_EDIT]) == 1 ? true : false; tableConfig.ALLOW_PHYSIC_DELETE = Convert.ToInt32(tbbaseTable.Rows[i][Tables.base_vindicate_table.ALLOW_PHYSIC_DELETE]) == 1 ? true : false; vindicateTableList.Add(tableConfig); } }
/// <summary> /// 加载数据 /// </summary> public void Initalize() { tbSystemTable = BaseDataController.GetSystemTableList(); //加载字段配置表 tbFieldConfig = GetVindicateTableFieldList(); ////根据表名从DLL加载字段列表 //string dllName = System.Windows.Forms.Application.StartupPath + "\\HIS.Entity.dll"; //Assembly assembly = Assembly.LoadFile( dllName ); //string typeName = "HIS.Model." + tableInfo.BASE_TABLE_DB_NAME.ToString().Trim(); //object obj = assembly.CreateInstance( typeName, true ); //if ( obj == null ) // throw new Exception( "未能从实体文件加载表对象【"+typeName + "】"); //PropertyInfo[] properies = obj.GetType().GetProperties(); //获取当前数据库表 DataTable tb = BaseDataReader.GetBaseTableData(tableInfo.BASE_TABLE_DB_NAME.ToString(), "1>2"); lstField = new List <Item>(); bool reloadConfig = false; for (int i = 0; i < tb.Columns.Count; i++) { string strWhere = Tables.base_table_config.TABLE_DB_NAME + " = '" + tableInfo.BASE_TABLE_DB_NAME.ToString().Trim() + "' and " + Tables.base_table_config.FIELD_DB_NAME + " = '" + tb.Columns[i].ColumnName + "'"; DataRow[] drsFields = tbFieldConfig.Select(strWhere); if (drsFields.Length == 0) { TableAndFieldConfig.AddDefaultConfig(tableInfo, tb.Columns[i].ColumnName); reloadConfig = true; } } if (reloadConfig) { tbFieldConfig = GetVindicateTableFieldList(); } for (int i = 0; i < tbFieldConfig.Rows.Count; i++) { Item item = new Item(); item.Text = tbFieldConfig.Rows[i][Tables.base_table_config.FIELD_CN_NAME].ToString().Trim(); item.Value = tbFieldConfig.Rows[i][Tables.base_table_config.FIELD_DB_NAME].ToString().Trim(); lstField.Add(item); } }