private DataTable GetTableByIndex(int index, LibTable[] libTables) { foreach (LibTable libtb in libTables) { foreach (LibTableObj tableobj in libtb.Tables) { TableExtendedProperties extprop = tableobj.DataTable.ExtendedProperties[SysConstManage.ExtProp] as TableExtendedProperties; if (extprop != null && extprop.TableIndex == index) { return(tableobj.DataTable); } } } return(null); }
//public #region 私有函数 private void GetColumns() { _cols = new Dictionary <string, LibFieldObj>(); List <string> vals = new List <string>(); ColExtendedProperties colExtended = null; LibFieldObj fobj = null; string ckey = string.Empty; TableExtendedProperties tableExtended = DataTable.ExtendedProperties[SysConstManage.ExtProp] as TableExtendedProperties; if (_tbaliasmdic == null) { _tbaliasmdic = new Dictionary <string, string>(); } foreach (DataColumn c in DataTable.Columns) { fobj = new LibFieldObj(); colExtended = c.ExtendedProperties[SysConstManage.ExtProp] as ColExtendedProperties; if (colExtended != null) { if (colExtended.IsRelate) { if (!string.IsNullOrEmpty(colExtended.AliasName)) { ckey = colExtended.AliasName; //fobj.FieldNm = colExtended.AliasName; } else if (!string.IsNullOrEmpty(colExtended.ObjectNm)) { ckey = colExtended.ObjectNm; //fobj.FieldNm = colExtended.ObjectNm; } else { ckey = c.ColumnName; //fobj.FieldNm = c.ColumnName; } string key = string.Format("{0}{1}{2}", colExtended.FromDSID, colExtended.FromTableIndex, colExtended.SourceFieldNm); if (!_tbaliasmdic.ContainsKey(key)) { string v = string.Format("{0}{1}", LibSysUtils.ToCharByTableIndex(tableExtended.TableIndex), LibSysUtils.ToCharByTableIndex(colExtended.FromTableIndex)); //int t = vals.Where(i => i == v).Count(); int cout = vals.Where(i => i == v).Count(); if (cout == 0) { _tbaliasmdic.Add(key, string.Format("{0}", v)); } else { _tbaliasmdic.Add(key, string.Format("{0}{1}", v, cout)); } vals.Add(v); } fobj.TBAliasNm = _tbaliasmdic[key]; fobj.FieldNm = colExtended.FieldNm; } else { if (tableExtended != null) { fobj.TBAliasNm = LibSysUtils.ToCharByTableIndex(tableExtended.TableIndex).ToString(); } ckey = string.IsNullOrEmpty(colExtended.ObjectNm) ? c.ColumnName : colExtended.ObjectNm; fobj.FieldNm = c.ColumnName; } fobj.colNm = c.ColumnName; _cols.Add(ckey, fobj); } else { fobj.FieldNm = c.ColumnName; fobj.colNm = c.ColumnName; _cols.Add(fobj.FieldNm, fobj); } } Columns = new ColumnObj(_cols); }