Пример #1
0
        /// <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();
        }
Пример #2
0
        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;
        }