public static bool GenerateTableColumnMetadata(EntityMetadata entity) { DataPagerStorage dataPager = new DataPagerStorage(null, null, null); Filter filter = new Filter(); filter.Conditions = new List <Condition>(); Condition condition = new Condition(); condition.Value = entity.Entityset.ToLower(); condition.Attibute = "entityset"; condition.OperatorFilter = "eq"; filter.Conditions.Add(condition); string strFilter = filter.GetRESTFilter(); //if exists in TableColumnsMetadata List <Entity> tableColumnsMetadata = TableMetadata.LoadGenericEntitiesFromTableStorageXML(tableHelper.QueryEntities("TableColumnsMetadata", strFilter, dataPager).Result); if (tableColumnsMetadata.Count.Equals(0)) { TableColumnsMetadataItem columnsMeta; Entity columnMetaLine; string defaultDescription = ConfigurationManager.AppSettings["DefaultDescription"].ToString(); string defaultDescriptionToAdd = string.Empty; try { foreach (DictionaryEntry column in entity.Columns) { defaultDescriptionToAdd = string.Format(defaultDescription, column.Key.ToString(), entity.Entityset); columnsMeta = new TableColumnsMetadataItem(column.Key.ToString(), string.Empty, defaultDescriptionToAdd, "ogdi=ogdiUrl"); columnsMeta.EntitySet = entity.Entityset.ToLower(); columnMetaLine = GetSchemaEntity(columnsMeta); if (!StoreEntity("TableColumnsMetadata", columnMetaLine, entity.Entityset, column.Key.ToString())) { WriteInFile(filename, "Error generating columns metadata for dataset " + entity.Entityset + " in column " + column.Key.ToString()); return(false); } } return(true); } catch (Exception e) { WriteInFile(filename, "Error generating columns metadata for dataset " + entity.Entityset + " " + e.Message); return(false); } } else { //already has columns metadata return(true); } }
private static Entity GetSchemaEntity(TableColumnsMetadataItem mapper) { var entity = new Entity(); entity.AddProperty("EntitySet", mapper.EntitySet); entity.AddProperty("Column", mapper.Column); entity.AddProperty("ColumnSemantic", mapper.ColumnSemantic); entity.AddProperty("ColumnNamespace", mapper.ColumnNamespace); entity.AddProperty("ColumnDescription", mapper.ColumnDescription); return(entity); }
private void DataGrid2_LoadingRow(object sender, System.Windows.Controls.DataGridRowEventArgs e) { System.Windows.Controls.DataGridRow row = e.Row; TableColumnsMetadataItem item = (TableColumnsMetadataItem)row.Item; DataGrid2.SelectedItem = item; //DataGridCell cell = GetCell(DataGrid2.SelectedIndex, NamespaceColumn.DisplayIndex); //if (item.ColumnsSemantic == string.Empty) //{ // if (cell != null) // { // cell.IsEnabled = false; // } //} //else //{ // if (cell != null) // { // cell.IsEnabled = true; // } //} }