/// <summary> /// Builds a list of available MetadataTables /// </summary> protected override void PopulateAttributeValues() { MetadataDa da = new MetadataDa(); var allTables = da.GetAllTableMetadata(null, QueryDiseaseId).AsEnumerable(); // restrict to disease specific tables if (QueryDiseaseId.HasValue) { allTables = allTables.Where(r => !r.IsNull(Disease.DiseaseId)); } // build a list of unique metadata tables with there associated metadata var tableToAttributes = from row in allTables let tableId = (int)row[MetadataTable.TableId] group row by tableId into groupByTable let tableName = groupByTable.First()[MetadataTable.TableName_Field].ToString() orderby tableName ascending select new { TableId = groupByTable.Key, TableName = tableName, Data = groupByTable, DiseaseAttributes = from record in groupByTable where !record.IsNull(DiseaseAttributeValue.DiseaseAttributeValueId) select record }; MetadataGrid.DataSource = tableToAttributes; MetadataGrid.DataBind(); // build missing metadata tables MetadataNewDa MNDa = new MetadataNewDa(); DataTable tablesDt = MNDa.GetAllTablesInDB(); // create display column for formatting DataView view = tablesDt.DefaultView; view.RowFilter = "TABLE_TYPE = 'BASE TABLE'"; view.Sort = "TABLE_NAME ASC"; NewMetadataTablesGrid.DataSource = view; NewMetadataTablesGrid.DataBind(); }
private void loadSystemTables() { MetadataNewDa MNDa = new MetadataNewDa(); DataTable tablesDt = MNDa.GetAllTablesInDB(); // create display column for formatting DataView view = tablesDt.DefaultView; view.RowFilter = "TABLE_TYPE = 'BASE TABLE'"; view.Sort = "TABLE_NAME ASC"; ddlNewMetaTableBaseTable.DataSource = view; ddlNewMetaTableBaseTable.DataBind(); //ddlNewMetaTableBaseTable.Items.Clear(); //for (int i = 0;i < tablesDt.Rows.Count;i++) //{ // string tableName = tablesDt.Rows[i]["TABLE_NAME"].ToString(); // string tablesType = tablesDt.Rows[i]["TABLE_TYPE"].ToString(); // ListItem li = new ListItem(tableName + " (" + tablesType + ")",tableName); // ddlNewMetaTableBaseTable.Items.Add(li); //} //ddlNewMetaTableBaseTable.Items.Insert(0," "); //ddlNewMetaTableBaseTable.SelectedIndex = 0; }