public List <DataSummary> GetDbSummarise() { List <DataSummary> summarise = new List <DataSummary>(); DbConnection conn = db.GetConnection(); DataTable dt = conn.GetSchema("Tables"); DataView dv = dt.DefaultView; dv.Sort = "TABLE_NAME"; conn.Close(); SchemaContainer <XTableSchema> xtc = XTableSchemaContainer.Instance(); foreach (DataRowView dr in dv) { DataSummary tbSummary = new DataSummary(); tbSummary.Name = dr["TABLE_NAME"].ToString(); tbSummary.Description = dr["TABLE_NAME"].ToString(); tbSummary.Caption = dr["TABLE_NAME"].ToString(); tbSummary.Type = dr["TABLE_TYPE"].ToString(); XTableSchema ts = xtc.GetItem(tbSummary.Name); if (xtc.Contains(tbSummary.Name)) { tbSummary.Caption = ts.Title; tbSummary.Description = ts.Description; } summarise.Add(tbSummary); } return(summarise); }
public static XTableSchema BuildSrcTableSchema(string fullTableName) { string[] paths = fullTableName.Split(ContainerConst.NamePathChar); string connName = paths[0]; string tbName = paths[1]; string sql = "Select * From [" + tbName + "]"; XTableSchema ret = CreateTableSchema(tbName, connName, sql); XTableSchemaContainer.Instance().AddItem(fullTableName, ret); return(ret); }
public List <ObjectDocket> GetTableSummarise(string folder) { List <ObjectDocket> ret = new List <ObjectDocket>(); string[] tables = XTableSchemaContainer.Instance().GetIDByFolder(folder); for (int i = 0; i < tables.Length; i++) { ObjectDocket tabSum = new ObjectDocket(); tabSum.Name = tables[i]; XTableSchema tabsch = XTableSchemaContainer.Instance().GetItem(tables[i]); tabSum.Title = tabsch.Title; ret.Add(tabSum); } return(ret); }
public XTableSchema RefreshTableSchemaFields(string tableId) { XTableSchema tableSchema = null; if (XTableSchemaContainer.Instance().Contains(tableId)) { tableSchema = XTableSchemaContainer.Instance().GetItem(tableId); } else { throw new XException("不能发现表(" + tableId + ")"); } TableSchemaTools.RefreshSchemaFields(tableId, tableSchema); return(tableSchema); }
public XTableSchema GetTableSchema(string tableFullName) { XTableSchema tableSchema = null; if (XTableSchemaContainer.Instance().Contains(tableFullName)) { tableSchema = XTableSchemaContainer.Instance().GetItem(tableFullName); } else if (TableSchemaTools.isSrcTable(tableFullName)) { tableSchema = TableSchemaTools.BuildSrcTableSchema(tableFullName); } else { throw new XException("不能发现表(" + tableFullName + ")"); } return(tableSchema); }
/// <summary> /// //用物理数据库中的字段及表信息,重新更新XTableSchema信息 /// </summary> /// <param name="tableId"></param> /// <param name="schema"></param> public static void RefreshSchemaFields(string tableId, XTableSchema schema) { BuildFields(schema); XTableSchemaContainer.Instance().UpdateItem(tableId, schema); }
public bool CheckTableExists(string tableFullName) { return(XTableSchemaContainer.Instance().Contains(tableFullName)); }
public void UpdateTableSchema(string tableFullName, XTableSchema schema) { XTableSchemaContainer.Instance().UpdateItem(tableFullName, schema); }